Hallo zusammen,
Also, mit dem Code von Nahpets, läuft es. Allerdings ist mit das nicht genau klar warum. Wenn ich deinen Code richtig verstanden hab, bedeutet dieser Teil, das bei einer
Exception (also Fehler) der die Error var bis auf 5 hochgezählt wird. Über den Befehl WinExec, wird das net start durchgeführt, und eine TXT Datei erstellt, mit den jeweiligen gestarteten Diensten.
Was ich nicht versteh, sind die Befehle e :
Exception (was ist e????), sMessage := e.Message (was ist sMessage und e.Message)
Delphi-Quellcode:
on e :
Exception Do begin
sMessage := e.
Message;
Inc(iError);
WinExec('
CMD.EXE /C "net start >> c:\netstart.txt"',SW_HIDE);
// nur zur momentanen Fehlersuche, kann später entfallen.
Application.ProcessMessages;
Sleep(1000);
end;
Bei dem folgenden Code denke ich, zu wissen, das folgendes passiert. Ist die QryActiv oder der Fehler Größer 5 werden. falls
vorhanden Fehlermeldungen ausgegeben. Aber nur in dem Fall von Error <5.
Bei Activer Qry wid das Programm fortgesetzt.
Delphi-Quellcode:
until QryMB256PLUS.Active or (iError > 5); // <- bitte ausprobieren, ob 5 reicht oder eventuell höher sein muss.
if iError > 5 then begin
ShowMessage('Die Datenbank konnte mit ' + IntToStr(iError) + ' Versuchen nicht geöffnet werden.'
+ #13 + 'Die letzte Fehlermeldung lautete: ' + sMessage);
Application.Terminate; // <- oder sonstige Fehlerbehandlung.
end;
Damit, müsste das Problem zwar gelößt sein, aber wo der Fehler genau gelegen hat, würde ich totzdem gerne wissen. Wisst Ihr das jetzt, oder müsste ich dafür noch was prüfen.
Danke aber schon mal Gruß Jens