AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Wie verwaltet Windows eigentlich handles?
Thema durchsuchen
Ansicht
Themen-Optionen

Wie verwaltet Windows eigentlich handles?

Ein Thema von runger · begonnen am 9. Mai 2006 · letzter Beitrag vom 1. Jun 2006
Antwort Antwort
Seite 1 von 2  1 2      
runger
(Gast)

n/a Beiträge
 
#1

Wie verwaltet Windows eigentlich handles?

  Alt 9. Mai 2006, 13:42
Hallo,

ich weiss nicht ob das eine blöde Frage ist, aber weiss jemand wie und wo Win2k oder XP handles verwaltet?
Irgendwo müsste es eine Liste geben, aus der man ersehen kann welches handle wohin gehört.
Oder gibt's das nur Prozessweit?

Rainer
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.163 Beiträge
 
Delphi 12 Athens
 
#2

Re: Wie verwaltet Windows eigentlich handles?

  Alt 9. Mai 2006, 14:22
Schau mal darein (Mit Delphi in den Kernel-Modus gelangen ), dort wirst du fündig werden ... aber es ist nicht gerade Leicht da ranzukommen. (so wie ich das verstanden hab -.-'' )
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
brechi

Registriert seit: 30. Jan 2004
823 Beiträge
 
#3

Re: Wie verwaltet Windows eigentlich handles?

  Alt 9. Mai 2006, 14:47
sollte im eProcess stehen

http://www.microsoft.com/mspress/boo...pchap/4354.asp

oder mal

http://hxdef.org/download/OpHandle.zip

anschaun
  Mit Zitat antworten Zitat
NicoDE
(Gast)

n/a Beiträge
 
#4

Re: Wie verwaltet Windows eigentlich handles?

  Alt 9. Mai 2006, 14:59
Zitat von runger:
wie und wo Win2k oder XP handles verwaltet?
Handles ist ein weiter Begriff. Es gibt verschiedenste Arten. In den aktuellen Windows-Versionen sind die prozessbezogenen 'Handles' auf Kernel-Objekte Indizes in eine Tabelle.
Es gibt AFAIK keine offiziell dokumentierte Win32-API-Funktion um die Tabelle auszulesen und/oder zu manipulieren.

Zitat von runger:
Oder gibt's das nur Prozessweit?
O.g. Handles beziehen sich auf einen Prozess und dessen Handle-Tabelle (sonst wäre DuplicateHandle sinnfrei). Allerdings kan man sich mit einer 'internen' API-Funktion eine Liste aller systemweit bekannten Handles ausgeben lassen (wie 'intern' schon vermuten lässt, kann sich die Funktion jederzeit ändern oder gar abgeschafft werden - zudem gibt es unter Wow64 einige Probleme mit den 'internen' APIs).
  Mit Zitat antworten Zitat
runger
(Gast)

n/a Beiträge
 
#5

Re: Wie verwaltet Windows eigentlich handles?

  Alt 10. Mai 2006, 06:30
Hallo NicoDE,

wenn du mir jetzt noch mitteilst wie man an alle handles herankommt wäre das toll.
Mir geht es hauptsächlich um "lost handles", also handles die in keinem Zusammenhang
mit einem Prozess mehr stehen.
Wenn man nach "lost handles" googled bekommt man jede Menge angezeigt, scheint also ein generelles
Problem zu sein.

Danke im Vorraus
Rainer
  Mit Zitat antworten Zitat
NicoDE
(Gast)

n/a Beiträge
 
#6

Re: Wie verwaltet Windows eigentlich handles?

  Alt 10. Mai 2006, 06:55
Zitat von runger:
wenn du mir jetzt noch mitteilst wie man an alle handles herankommt wäre das toll.
Such nach NtQuerySystemInformation(SystemHandleInformation, ...) oder benutze die Komponenten von Mathias Rauen (http://madshi.net/).

Zitat von runger:
Mir geht es hauptsächlich um "lost handles", also handles die in keinem Zusammenhang mit einem Prozess mehr stehen.
Soweit es die Handles auf Kernel-Objekte betrifft, gibt es sowas nicht (sie sind prozessbezogen und werden beim Beenden des Prozesses 'aufgeräumt').

Zitat von runger:
Wenn man nach "lost handles" googled bekommt man jede Menge angezeigt, scheint also ein generelles Problem zu sein.
Welches Problem willst du eigentlich lösen?
  Mit Zitat antworten Zitat
runger
(Gast)

n/a Beiträge
 
#7

Re: Wie verwaltet Windows eigentlich handles?

  Alt 10. Mai 2006, 08:26
Hallo,

ich habe verlorene serielle Schnittstellen im System. Ich krieg sie nur wieder, wenn ich
das System komplett ausschalte.
Hätte ich das handle der Schnittstelle ( das ist ein "lost handle", ist vom Prozess gelöst )
könnte ich die Schnittstelle schliessen.

Rainer
  Mit Zitat antworten Zitat
NicoDE
(Gast)

n/a Beiträge
 
#8

Re: Wie verwaltet Windows eigentlich handles?

  Alt 10. Mai 2006, 08:39
Zitat von runger:
Hätte ich das handle der Schnittstelle ( das ist ein "lost handle", ist vom Prozess gelöst )
könnte ich die Schnittstelle schliessen.
Auf der Seite des Unlockers gibt es eine Übersicht mit Tools die das Schließen von Handles unterstützen... vielleicht findet sich eines mit Quellcode.
  Mit Zitat antworten Zitat
runger
(Gast)

n/a Beiträge
 
#9

Re: Wie verwaltet Windows eigentlich handles?

  Alt 10. Mai 2006, 09:44
Hallo Nico,

hat leider nichts geholfen. Dort bezieht sich alles auf Dateien.
Ich werde die Kollegen dort aber anschreiben, vielleicht bekomme ich Hilfe.

Nochmals vielen Dank für deine Hilfe.

Rainer
  Mit Zitat antworten Zitat
NicoDE
(Gast)

n/a Beiträge
 
#10

Re: Wie verwaltet Windows eigentlich handles?

  Alt 10. Mai 2006, 10:29
Zitat von runger:
hat leider nichts geholfen. Dort bezieht sich alles auf Dateien.
Es sollte mich wundern wenn die seriellen Schnittellen nicht als 'Datei'-Objekte im Kernel abgebildet werden (siehe HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM).

ps: versuch's mit dem 'Handle'-Tool von Sysinternals. Ich gehe davon aus, dass sich Handles auf \Device\Serial0 und/oder \DosDevices\COM1 finden lassen.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:37 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz