Nur ganz kurz:
Zu den Abstürzen:
Ich kann nur soviel sagen es ist nicht wirklich ein einfrieren ist - wenn man immer Strg+ENF+ALT drückt immer oft hintereinander kann man mit der Maus Programme beenden (Über den Taskmanager) gehört allerdings etwas Fingerspitzengefühl darein!
Woran das liegt:
an dem Mouse-Hook - bringe ich den Explorer nach so einem Problem zum Absturz und starte ihn wieder Lauft das Programm erstmal wieder einwandfrei!
mein Mouse-Hook
ONCreate:
Delphi-Quellcode:
if FHookStarted then
begin
ShowMessage('Error the DriveMan has a conflict!');
Application.terminate;
end;
JHook := SetWindowsHookEx(WH_JOURNALRECORD, @Get_Post, hInstance, 0);
if JHook > 0 then
begin
FHookStarted := True;
end
else
JHook := SetWindowsHookEx(WH_JOURNALRECORD, @Get_Post, hInstance, 0);
Delphi-Quellcode:
function Get_Post(Code, wParam: Integer; var EventStrut: TEventMsg): Integer; stdcall;
begin
pos_x := -1;
pos_y := -1;
Result := CallNextHookEx(JHook, Code, wParam, Longint(@EventStrut));
if Code < 0 then Exit;
if Code = HC_SYSMODALON then Exit;
if Code = HC_ACTION then
begin
pos_x := EventStrut.paramL;
pos_y := EventStrut.paramH;
go_open(pos_x, pos_y); // FUNKTION ZUM PRÜFEN DER MAUSPOSITION - ERGO RICHTIGE POS = OFFEN ODER ZU
end;
end;
OnClose
Delphi-Quellcode:
if FHookStarted then
UnhookWindowsHookEx(JHook);
eventMessage
Delphi-Quellcode:
procedure Tdriveman_form.App_eventMessage(var Msg: tagMSG; var Handled: Boolean);
begin
Handled := False;
if (Msg.message = WM_CANCELJOURNAL) and FHookStarted then
JHook := SetWindowsHookEx(WH_JOURNALRECORD, @Get_Post, hInstance, 0);
end;
Wenn ich im OnCreate den Hook bereich deaktiviere rennt das Tool ohne Probleme!
___
Das mit dem Virenscanner - sorry wenn ich nun euch eventuell auf den Fuß trete aber wer dem Virenscanner etwas glaubt
. XPMan könnt Ihr auf diversen Webseiten von anderen Herstellern von Virenscanner testen - das Programm ist sauber! So wie alle meine Programme!
Ich habe das nun schon öfters gehört - aber komischerweise auch NUR von diesem Virenscanner!