![]() |
Kopiervorgang unter Windows
weiss jemand welche Datei für den Kopiervorgang in Windows benutzt wird oder wie man in der Menüleiste die kopierfunktion deaktivieren (also immer grau machen) kann?
|
Re: Kopiervorgang unter Windows
Das wird in der Explorer.exe stehen oder in einer DLL, die er nutzt. Einen Menüeintrag kan man mit
![]() Was willst eigentlich du machen? Das Kopieren von Dateien verhindern? |
Re: Kopiervorgang unter Windows
ja will das Kopieren verhindern aber nur solange mein programm läuft..
wie ich den Shortcut fürs kopieren abfangen kann weiss ich schon :) |
Re: Kopiervorgang unter Windows
Das Kopieren von Dateien kannst du nicht verhindern, wie schon Luckie sagte, gibt es tausende Möglichkeiten. Im Explorer wird das Kopieren über die Funktion ShFileOperation gemacht (glaube in der shell32.dll). Allerdings nutzt diese Funktion ja nicht jedes Programm.
|
Re: Kopiervorgang unter Windows
Zitat:
|
Re: Kopiervorgang unter Windows
damit man eine Datei die mein Programm bei Ausführung erstellt nicht kopieren kann. Die Datei wird wieder gelöscht wenn das programm beendet wird..
aber frage jetzt nicht wieso und weshalb und weswegen ;) kann es sein, dass ich mit EnableMenuItem nur die Items von meinem Programm steuern kann und nicht die Menüeinträge vom Arbeitsplatz ?..ich möchte nur, dass eben kopieren da grau ist so wie es ist,wenn man keine Datei angeklickt hat und das menü öffnet. |
Re: Kopiervorgang unter Windows
Falls du sensible Daten in der datei zwischenspeicherst, lass dir was anderes einfallen. Mit einem Dateiwiederherstellungstoll wird man die datei wieder herstellen können. Und sei dir versichert, jemand, der an die Datei kommen will, der kommt an die datei dran. Einzige Lösung, WriteFile hooken und verhindern, aber dann kannst du dein Windows wegschmeisen, weil dann gar nichts mehr geht so lange dein Programm läuft.
Zitat:
|
Re: Kopiervorgang unter Windows
Zitat:
Wenn du diese mit exklusivem Schreibrecht oeffnest, kann sie afair auch nicht kopiert werden:
Delphi-Quellcode:
und schon kann die Datei nur noch ueber den erstellten Filestream bearbeitet werden. Kopieren ueber den Explorer, Cmd ect. funzt afaik dann nicht mehr. Um diese "blockade" wieder aufzuheben, einfach nur den Stream wieder freigeben ;)
TFileStream.Create(Pfad, fmShareExclusive);
Aber wie Luckie schon sagt: wenn es sich hierbei um sensible Daten handelt, ist eine Datei als Zwischenspeicher denkbar ungeeignet. greetz Mike |
Re: Kopiervorgang unter Windows
Zitat:
![]() |
Re: Kopiervorgang unter Windows
was wäre denn deiner Meinung nach der effektivste Weg, den man gehen könnte um eben einem "Normaluser" das kopieren zu verbeiten?..
die Datei abspeichern und verstecken.. das könnte er nur tracen, wenn er ein programm hat, welches ihm anzeigt wo welches Programm gerade welche Daten ablegt .. ich weiss das ist null Sicherheit aber wenn du schon sagst, dass dies nicht geht, dann lohnt die Mühe ja nicht alles zu versuchen ..oder ? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:17 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz