![]() |
Problem diskpart unter Server w2k3 64bit starten
Hallo,
ich möchte aus meinem Programm (BDS2006 unter WXP compiliert) Diskpart.exe starten. Unter WXP und W2K geht es ohne Probleme, aber unter W2K3 Server 64bit lässt es sich nicht starten. Zum Test ein Start von notepad.exe geht auch unter W2K3 64bit problemlos. Der Punkt CreateProcess schlägt fehl, irgendeine Idee woran es liegen könnte ?
Delphi-Quellcode:
const
exe_Ok = 0; // Programm Start und Ende OK exe_Fehler = 1; // Fehler beim Programmstart exe_TimeOut = 2; // Zeitüberschreitung bei der Ausführung exe_TermOk = 3; // Nach Zeitüberschreitung konnte es beendet werden exe_TermErr = 4; // Nach Zeitüberschreitung konnte es nicht beendet werden function exe_wait(prog, para : string; timeout : integer; terminate : boolean) : integer; var prg, param, verz, ext : string; startupinfo : tStartupInfo; ProcessInfo : TProcessInformation; ExitCode : integer; begin ExitCode := 0; prg := trim(prog); ext := trim(Ansilowercase(extractFileExt(prg))); param := getEnvStr(Para) + chr(0); verz := ExtractFilePath(prg); prg := prg + ' ' + param; fillchar(startupInfo, sizeof(tStartupInfo), 0); startupInfo.cb := sizeof(tStartupInfo); if createProcess(nil, pchar(prg), nil, nil, false, NORMAL_PRIORITY_CLASS, nil, pchar(verz), startupInfo, processInfo) then begin if waitForSingleObject(processInfo.hProcess,timeout*1000) = Wait_TimeOut then begin if terminate then begin if terminateProcess(processInfo.hProcess,exitCode) then result := exe_TermOK else result := exe_TermErr; end else result := exe_TimeOut; end else result := exe_ok; closeHandle(processInfo.hProcess); end else result := exe_Fehler; // <-- Dieser Fehler kommt zurück Application.ProcessMessages; end; |
Re: Problem diskpart unter Server w2k3 64bit starten
Hallo
Was liefert denn
Delphi-Quellcode:
?
SysErrorMessage(GetLastError)
|
Re: Problem diskpart unter Server w2k3 64bit starten
Also es wird immer seltsamer, im Windows Ordner liegt die Datei ohne Hidden Attribut etc.
Delphi-Quellcode:
Ein Start C:\windows\system32\diskpart.exe endet aber mit Fehler: createProcess The system cannot find the file specified
Directory of C:\windows\system32
04.04.2006 14:00 263.680 diskpart.exe 1 File(s) 263.680 bytes C:\>attrib c:\windows\system32\diskpart.exe A C:\windows\system32\diskpart.exe Wenn ich aber C:\windows\system32\diskpart.exe in den Ordner c:\install kopiere funktioniert der Start c:\install\diskpart.exe ohne Fehler |
Re: Problem diskpart unter Server w2k3 64bit starten
Zitat:
besonders beliebt bei vista-usern: keine Zugriffsrechte auf system32?? Vielleicht nur für Admins. Gruss Reinhard |
Re: Problem diskpart unter Server w2k3 64bit starten
Notepad.exe liegt auch in c:\windows\system32 und lässt sich starten.
Beim Vergleich der Security Einstellungen gibt es beim Notepad aber zusätzlich zu den "Administrators" noch "Users" und "Power Users" mit Read & Execute Berechtigung. Im Taskmanager steht aber ohnehin als User meines Programms "Administrator" und wenn ich Notepad aus dem Programm heraus starte auch. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:45 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