Jacek napisał:
Aby program był wygaszaczem wystarczy zmienić rorzeszerzenie
>
>program.exe.scr
>kliknąć nań prawym i wybrać zainstaluj
>albo wrzuc do katalogu z wygaszaczami Windows
Troszeczkę za bardzo uprościłeś :)
Żeby windows poprawnie sam wykrywał, że jest to wygaszacz to:
- W pliku dpr po linijce program NazwaProgramu; musi znaleźć się:
{$D SCRNSAVE : NazwaWygaszaczaWyświetlanaNaLiścieWygaszaczy}
- Nie można uruchamiać drugiej instancji wygaszacza. W pliku dpr po begin trzeba wpisać:
if HPrev <> 0 then Exit;
- Gdy Windows uruchamia wygaszacz przekazuje do niego parametr /s (lub -s), a jeżeli chce uruchomić okno konfiguracyjne to uruchamia go bez parametru.
Jeżeli twój wygaszacza nie ma okna konfiguracyjnego to nie musisz nic dopisywać, jeżeli jednak chcesz dodać możliwość konfiguracji to wpisz tak:
Params := UpperCase(ParamStr(1));
if (Params = '/S') or (Params = '-S') then
begin
Application.Title := 'Nazwa wygaszacza';
Application.CreateForm( TFormaWygaszacza, FormaWygaszacza);
end
else
begin
Application.CreateForm( TFormaKonfiguracyjna, FormaKonfiguracyjna);
end;
Application.Run;
Params jest zadeklarowane jako string
A i jeszcze jedno. Wygaszacz musi mieć rozszerzenie SCR i jego nazwa powinna być napisana DUŻYMI literami (co prawda Eksplorator może je zmienić, ale jak napiszesz dużymi to będą w rzeczywistości duże) To wymaganie odnosi się do Widows 95. W późniejszych widach chyba nie występuje ten mankament.
A żeby mieć spokój z odpowiednim umieszczaniem wygaszaczy to wrzucaj je do katalogu Windows lub Windows\System (lub System32).
Tyle jeżeli chodzi o prawidłowe budowanie wygaszaczy, ale jak się uprzesz to możesz każdy exek uruchamiać jako wygaszacz.--Jest jeszcze jeden błąd ... :)
--- DELPHI HELP po polsku ---
http://codecentral.borland.com/codecentral/ccweb.exe/listing?id=18659
------------Reklama-------------
serwer: warszawa.ircnet.pl sieć: POLNet kanał: #4programmers.net