Показать сообщение отдельно
Старый 22.01.2003, 23:03     # 2
Ghost
::VIP::
Звезда первого сезона
Молчун-2004
 
Аватар для Ghost
 
Регистрация: 24.08.2002
Сообщения: 1 575

Ghost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех Гуру
Angry

OK. Тогда объясните мне такую фигню:

Сделал ScreanSaver, переименовал LOGOFF.EXE в LOGOFF.SCR, установил на своей машине - все работает. Ставлю на студенческую - работает.

Далее начинаются непонятки.

Устанавливаю на другую студенческую (конфигурация такая же, что и на предыдущей), выдает ошибку (см. рис.). Запускаю exe-шник - работает. Запускаю LOGOFF.SCR - работает. Автоматически не запускается, точнее запускается, но не рабоатет (см. рис.). Создаю такой же проект на студенческой машине (WinNT4, Delphi3; у меня - Win2k, Delphi6), файл получается вдвое меньше. Запускаю exe-шник - работает, запускаю LOGOFF.SCR - работает. Автоматически - выдает ошибку. И это при том, что на WinLogon'е ошибок не выдает.

ScreenSaver прописан в профиле Default User и действует на пользователя Guest и на экране WinLogon (т.е. на том экране, на котором висит табличка Нажмите Ctrl-Alt-Del). Прикол в том, что в код вставлена строка

exitwindowsex(ewx_logoff,0);

Но на десктопе пользователя (Default) она делает LOGOFF, а на WinLogon'е - SHUTDOWN. Мне этого не надо, и я в код, который выполняется при загрузке, вставил строки:

var
s: String;
uname: pchar;
unsiz: integer;
begin
...
uname := StrAlloc(255);
unsiz := 254;
GetUserName(uname,unsiz);
if (unsiz > 0) then s := string(uname)
else s := 'n/a';
StrDispose(uname);
if UpperCase(s) <> 'GUEST' then Halt(0);
...
end;


По видимому, ошибка возникает при запуске процедуры GetUserName. Как это обойти или исправить?
Изображения
Тип файла: gif error.gif (2.6 Кбайт, 5 просмотров - Кто скачивал? )
__________________
Действовать надо тупо и это лучшее доказательство нашей чистоты и силы!
Ghost вне форума