Einzelnen Beitrag anzeigen

Fridolin Walther

Registriert seit: 11. Mai 2008
Ort: Kühlungsborn
446 Beiträge
 
Delphi 2009 Professional
 
#5

Re: Handle in Objektnamen konvertieren

  Alt 19. Okt 2009, 15:53
Zitat von himitsu:
Zitat:
Wie bekomme ich den Dateinamen aus einem dazugehörigen Dateihandle?
- MSDN-Library durchsuchenGetModuleFileName nutzen, um damit den Dateinamen auszulesen
Sicher das Du nicht eher MSDN-Library durchsuchenGetMappedFileName meinst?

Zitat von himitsu:
einzige Mankos:
- man braucht die nötigen Rechte um eine MMF damit erstellen zu können (sollten aber meißtens vorhanden sein)
- die Datei muß mindestens 1 Byte groß sein, da man ja etwas benötigt, um es in den Speicher mappen zu können
- du benötigst Rechte um das Handle duplizieren zu können, wenn Du das Handle eines fremden Prozesses auflösen möchtest

Davon Abgesehen funktioniert Deine Methode explizit nur mit Dateihandles. Die hier vorgestellte Methode allerdings grundsätzlich mit allen Handles. Das Beispiel mit den Dateihandles ist nur die häufigste Anwendung. Prinzipiell kannst Du auch Handles zu Mutexes oder Events zu Namen auflösen oder aber Registry Handles z.B..

Zitat von Apollonius:
Zugegeben: Ich kenne mich nicht mit Treiber-Entwicklung aus. Mir kommt dieser Code jedoch wie eine einzige Sicherheitslücke vor.
Nunja, es geht prinzipiell um die Demonstration des Vorgehens. Es wird z.B. nicht explizit überprüft ob der übergebene Buffer wirklich beschreibbar ist. Ein ProbeForWrite wäre also Minimum noch notwendig.
Fridolin Walther
"While Mr. Kim, by virtue of youth and naiveté, has fallen prey to the inexplicable need for human contact, let me step in and assure you that my research will go on uninterrupted, and that social relationships will continue to baffle and repulse me."
  Mit Zitat antworten Zitat