Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Инсталляция Screen Saver

Delphi , Графика и Игры , ScreenSaver и ScreenMate

Инсталляция Screen Saver

Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

uses
   shellapi;

 procedure InstallScreenSaver(const FileName: string);
 begin
   { Set this screensaver as default screensaver and open the properties dialog}
   ShellExecute(Application.Handle, 'open', PChar('rundll32.exe'),
     PChar('desk.cpl,InstallScreenSaver ' + FileName), nil, SW_SHOWNORMAL);
 end;


 procedure TForm1.Button1Click(Sender: TObject);
 begin
   InstallScreenSaver('c:\YourScreenSaverFile.scr');
 end;

Here is the translation of the content into Russian:

Код на Delphi для установки экранной саверки на Windows с помощью модуля ShellAPI.

Обзор кода:

  1. Процедура InstallScreenSaver принимает в параметре имя файла, которое должно быть путем и именем файла экранной саверки (например, c:\ВашФайлЭкраннойСаверки.scr).
  2. В процедуре она использует функцию ShellExecute для выполнения команды-utility rundll32.exe.
  3. Первый аргумент - это handle текущего приложения (Application.Handle).
  4. Второй аргумент - 'open', который указывает, что файл должен быть открыт.
  5. Третий аргумент - строка, содержащая путь и имя исполняемого файла для запуска (rundll32.exe).
  6. Четвертый аргумент - еще одна строка, которая содержит параметры командной строки для desk.cpl. Она указывает Windows установить экранную саверку с указанным файлом имени.
  7. Пятый аргумент - nil, что означает, что не должно создаваться дополнительное окно для отображения вывода выполненной команды.
  8. Наконец, шестой аргумент - SW_SHOWNORMAL, который указывает, что окно должно быть отображено в нормальном (не миниатюризированном) состоянии.

В обработчике события Button1Click можно увидеть, что при нажатии кнопки вызывается процедура InstallScreenSaver с файлом имени 'c:\ВашФайлЭкраннойСаверки.scr'. Это установит экранную саверку, указанную этим файлом имени, как дефолтную и откроет ее свойства.

Примечание: Убедитесь, что замените 'c:\ВашФайлЭкраннойСаверки.scr' на реальный путь и имя вашего файла экранной саверки.

Альтернативное решение:

Если вы хотите сделать код более надежным, вы можете добавить обработку ошибок для проверки успешности установки экранной саверки. Вы можете это сделать, проверяя возвращаемое значение ShellExecute, которое будет не равно нулю, если операция была успешна. Например:

procedure InstallScreenSaver(const FileName: string);
begin
  ShellExecute(Application.Handle, 'open', PChar('rundll32.exe'), 
    PChar('desk.cpl,InstallScreenSaver ' + FileName), nil, SW_SHOWNORMAL);

   // Проверка успешности установки
  if ShellAPI.ShellExecuteW(Application.Handle, nil, nil, nil, nil) = S_OK then
    ShowMessage('Экранная саверка установлена успешно!')
  else
    ShowMessage('Ошибка установки экранной саверки!');
end;

Таким образом, вы можете предоставить более информативное сообщение пользователю о том, была ли установка успешной или нет.

В статье описывается код на языке Delphi для установки скринсейвера Screen Saver, используя процедуру InstallScreenSaver и функцию ShellExecute.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: ScreenSaver и ScreenMate ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-19 13:29:56
2024-10-12 16:33:47/0.0038352012634277/0