Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Inno Setup (создание инсталяционных пакетов)

Модерирует : gyra, Maz

articlebot (13-10-2013 23:33): продолжение темы - №15
 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

   

WildGoblin



Ru-Board Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Скрипт для добавления ярлыков в Game Explorer (работает только в Windows 7)
 
Всё необходимое для работы скрипта
 
Инструкция по применению:
1. Создаёте необходимые файлы - файл с иконками (какие нужны форматы - см. документацию к DirectX SDK).
2. С помощью программы GDFMaker.exe (которая находится в папке GDFMaker) проводите необходимые манипуляции (как с ней работать - см. документацию к DirectX SDK).
3. Файлы (.ico, .xml) получившиеся после отработки программы GDFMaker.exe помещаем в GDF.dll которая находится в папке include (сделать это можно любым редактором ресурсов - хотя бы и ResHacker).
4. Интегрируем представленный скрипт в ваш.
5. Всё!
 

Код:
#define GDFBinary "{app}\GDF.dll"  
 
[Tasks]
Name: Gameux; Description: "Добавить ссылки в Game Explorer"; GroupDescription: "Game Explorer:"; MinVersion: ,6.0.6000;  
 
[Files]
Source: include\GDF.dll; DestDir: {app};
Source: include\GameuxInstallHelper.dll; DestDir: {app}; Flags: overwritereadonly
 
[Code]
type
TGUID = record D1: Cardinal; D2: Word; D3: Word; D4: Array [0..8] of Byte; end;
 
function AddToGameExplorer(BinaryPatch: String; Path: String; InstallType: Integer; var GUID: TGUID): Cardinal; external 'AddToGameExplorerA@files:GameuxInstallHelper.dll stdcall setuponly';  
function RetrieveGUIDForApplication(BinaryPatch: String; var GUID: TGUID): Cardinal; external 'RetrieveGUIDForApplicationA@{app}\GameuxInstallHelper.dll stdcall uninstallonly';  
function RemoveFromGameExplorer(var GUID: TGUID): Cardinal; external 'RemoveFromGameExplorer@{app}\GameuxInstallHelper.dll stdcall uninstallonly';  
 
var GUID: TGUID;  
procedure CurStepChanged(CurStep: TSetupStep);  
var GDFBinary: String;  
  begin  
    if (CurStep = ssPostInstall) and IsTaskSelected('Gameux') then
      begin  
        GDFBinary:=ExpandConstant('{#GDFBinary}');  
        AddToGameExplorer(GDFBinary, ExpandConstant('{app}'), 3, GUID);  
      end;  
  end;
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);  
var GDFBinary: String; GUID: TGUID;  
  begin  
    if (CurUninstallStep=usUninstall) then  
      begin  
        GDFBinary:=ExpandConstant('{#GDFBinary}');  
        RetrieveGUIDForApplication(GDFBinary, GUID);  
        RemoveFromGameExplorer(GUID);  
        UnloadDll(ExpandConstant('{app}\GameuxInstallHelper.dll'));  
      end;  
  end;

Всего записей: 29394 | Зарегистр. 15-09-2001 | Отправлено: 14:57 04-09-2011 | Исправлено: WildGoblin, 20:36 01-04-2013
   

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Программы » Inno Setup (создание инсталяционных пакетов)
articlebot (13-10-2013 23:33): продолжение темы - №15


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru