Autor Beitrag
Gewuerzgurke Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 152

Win XP
Lazarus
BeitragVerfasst: So 19.04.09 12:03 
OK, so funktioniert es wirklich besser. Meine Procedure zum "sich selbst Löschen" sieht jetzt so aus:
ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
procedure TFormKonfiguration.Deinstallieren(Sender: TObject);
var VUninstaller : textfile;
    VUninstallerInhalt : Array [0..4of string;
begin
 VUninstallerInhalt[0] := 'ECHO OFF';
 VUninstallerInhalt[1] := ':WAIT';
 VUninstallerInhalt[2] := 'DEL ' + paramstr(0) + ' /f';
 VUninstallerInhalt[3] := 'IF EXIST ' + paramstr(0) + ' GOTO WAIT';
 VUninstallerInhalt[4] := 'DEL ' + paramstr(0) + '_h5g8sh39kghdbejtr5h2.bat' + ' /f';
 createFile(
  PChar(paramstr(0) + '_h5g8sh39kghdbejtr5h2.bat'),
  GENERIC_READ and GENERIC_WRITE,
  0,
  nil,
  CREATE_NEW,
  FILE_FLAG_OVERLAPPED,
  0);
 assignfile(
  VUninstaller,
  PChar(paramstr(0) + '_h5g8sh39kghdbejtr5h2.bat'));
 rewrite(VUninstaller);
 write(VUninstaller,VUninstallerInhalt[0]);
 writeLn(VUninstaller);
 write(VUninstaller,VUninstallerInhalt[1]);
 writeLn(VUninstaller);
 write(VUninstaller,VUninstallerInhalt[2]);
 writeLn(VUninstaller);
 write(VUninstaller,VUninstallerInhalt[3]);
 writeLn(VUninstaller);
 write(VUninstaller,VUninstallerInhalt[4]);
 closefile(VUninstaller);
 shellExecute(
  Handle,
  'open',
  PChar(paramstr(0) + '_h5g8sh39kghdbejtr5h2.bat'),
  nil,
  nil,
  SW_MINIMIZE);
 close;
end;


CreateFile kann man glaub' ich auch weglassen.

Jedoch fände ich es sinvoll, im Uninstaller-Menü auch anzubieten, dass der Schoner nur aus dem Menü gelöscht wird, die Datei aber bestehen bleibt. Nur wo ist diese Liste? Hab' mal die entsprechende rundll.exe mit RegSpy untersucht, aber von Bildschirmschonern keine Spur...

Dafür habe ich den Schlüssel HKEY_CURRENT_USER\Control Panel entdeckt. Darin speichern auch einige Schoner ihre Einstellungen, so auch Starfield.
GTA-Place
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
EE-Regisseur
Beiträge: 5248
Erhaltene Danke: 2

WIN XP, IE 7, FF 2.0
Delphi 7, Lazarus
BeitragVerfasst: So 19.04.09 12:06 
Du könntest auch eine TStringList nehmen, da alles reinschreiben und die dann speichern, das wäre wohl etwas einfacher ;-)

_________________
"Wer Ego-Shooter Killerspiele nennt, muss konsequenterweise jeden Horrorstreifen als Killerfilm bezeichnen." (Zeit.de)