Hallo,
ich weis leider nicht warum diese Fehler auftauchen bei der Programmliste und Verzeichnisliste. Ich frage voher ab, ob das Programm oder das Verzeichnis existiert, über FileExists oder DirectoryExists, nur wenn vorhanden, auflisten. Die Programme habe ich in einem Array und die Verzeichnisse lese ich über SHGetSpecialFolderLocation aus. Da muss der Fehler stecken:
Delphi-Quellcode:
{--[GetSpecialDir]-------------------------------------------------------------}
const
// als Beispiel ein paar Systemverzeichnisse
CSIDL_COMMON_APPDATA = $0023;
CSIDL_COMMON_DESKTOPDIRECTORY = $0019;
CSIDL_COMMON_DOCUMENTS = $002E;
CSIDL_COMMON_FAVORITES = $001F;
function GetSpecialDir(CSIDL: Integer): String;
var
PIDL : PItemIDList;
Path : PChar;
begin
SHGetSpecialFolderLocation(Main.Handle, CSIDL, PIDL);
GetMem(Path, MAX_PATH);
SHGetPathFromIDList(PIDL, Path);
Result := Path;
FreeMem(Path);
end;
// hier das Anzeigen
for i := 0 to 34 do
begin
If DirectoryExists(GetSpecialDir(SYSTEM_CSIDL_DIRS[i])) then
begin
Item := Main.LVwInfos.Items.Add;
Item.Caption := SYSTEM_STRING_DIRS[i];
Item.SubItems.Add(GetSpecialDir(SYSTEM_CSIDL_DIRS[i]));
end;
end;
Bei mein Vaters Rechner kommt der Fehler beim Autostartverzeichniss aber warum, weis ich nicht.
Nun zum registriert sein oder nicht registriert sein.

Diesen Wert lese ich aus der Registry aus. Dort scheint zu stehen, dass Windows registriert ist.
HKLM\SOFTWARE\Microsoft\Windows( NT)\CurrentVersion\';
und den Wert von RegDone.
Ich prüfe ob der Wert von RegDone = '' oder nicht, wenn es so ist, dann ist es nicht registriert sonst ist es registiert.
Zu den Icons: ja, leider Fehlen bei manchen die Pfad, ähnlich auch bei den Dateitypen, da muss ich noch die Anführungstriche und andere Zeichen entfernen um den genauen Pfad zu ermitteln.
Zitat:
Ich habe ein DualMon System, also habe ich 2 Monitore mit zwei Auflösungen. Dies wird bisher noch nicht berücksichtigt. Willst du einen Code haben um die Grafikkartennamen (vom Treiber) und den Monitornamen zu bekommen an den Ausgängen?
Leider konnte ich in der Zeit nicht alles schaffen, aber ein Code der mir helfne könnte, kannst du mir durchaus geben. Wär schön.
Gruß
Mazel