2011-02-03 6 views
0

저는 Windows 게임 탐색기와 통합 할 게임을 얻으려고합니다. 지금까지 저는 게임 정의 형식 XML 파일을 내 바이너리에 리소스로 포함 시켰습니다. 실제 Inno 설치 스크립트는 DLL을 설치 프로그램에 통합하기 위해 다음과 같이 보입니다 :게임 탐색기에 게임 추가

이것은 내가 지금까지해온 것입니다 :

[Files] 
Source: GameuxInstallHelper.dll;    DestDir: "{tmp}"; Flags: dontcopy 
[Code] 
const 
GIS_NOT_INSTALLED = 1; 
    GIS_CURRENT_USER = 2; 
GIS_ALL_USERS = 3; 
// Given a game instance GUID and path to GDF binary, registers game with Game Explorer 
procedure AddToGameExplorer(GDFBinPath: PChar; GameInstallPath: PChar; InstallScope : integer; GameGUID : GUID); 
external '[email protected]:GameuxInstallHelper.dll stdcall'; 
// Given a game instance GUID, unregisters a game from Game Explorer 
function RemoveFromGameExplorer(GameGUID : GUID) : boolean; 
external '[email protected]:GameuxInstallHelper.dll stdcall'; 
// Given a path to a GDF binary that has already been registered, returns a game instance GUID 
function RetrieveGUIDForApplication(GDFBinPath: PChar; var GameGUID : GUID) : boolean; 
external '[email protected]:GameuxInstallHelper.dll stdcall'; 
// Creates a unique game instance GUID 
function GenerateGUID(var GameGUID : GUID) : boolean; 
external '[email protected]:GameuxInstallHelper.dll stdcall'; 
// Register with Media Center using the data from a GDF binary 
procedure RegisterWithMediaCenter(GDFBinPath : PChar; GameInstallPath : PChar; InstallScope : integer; ExePath : PChar; CommandLineArgs : PChar; UseRegisterMCEApp : boolean); 
external '[email protected]:GameuxInstallHelper.dll stdcall'; 
// Unregister with Media Center 
procedure UnRegisterWithMediaCenter(GameInstallPath : PChar; InstallScope : integer; strExePath : PChar; UseRegisterMCEApp : boolean); 
external '[email protected]:GameuxInstallHelper.dll stdcall'; 
// Given a a game instance GUID, creates a task shortcut in the proper location 
procedure CreateTask(InstallScope : integer; GameInstanceGUID : GUID; SupportTask : boolean; TaskID : integer; TaskName :PChar; LaunchPath : PChar; CommandLineArgs : PChar); 
external '[email protected]:GameuxInstallHelper.dll stdcall'; 
// This removes all the tasks associated with a game instance GUID 
// Pass in a valid GameInstance GUID that was passed to AddGame() 
procedure RemoveTasks(GameInstanceGUID : GUID); 
external '[email protected]:GameuxInstallHelper.dll stdcall'; 
// Creates the registry keys to enable rich saved games. The game still needs to use 
// the rich saved game header as defined in the documentation and support loading a 
// saved game from the command line. 
procedure SetupRichSavedGames(SavedGameExtension : PChar; LaunchPath : PChar; CommandLineToLaunchSavedGame : PChar); 
external '[email protected]:GameuxInstallHelper.dll stdcall'; 
// Removes the registry keys to enable rich saved games. 
procedure RemoveRichSavedGames(SavedGameExtension : PChar); 
external '[email protected]:GameuxInstallHelper.dll stdcall'; 

그러나, 나는 두 가지 오류가 있고 난 그 과거를 얻을 수 없습니다

Unknown type 'GUID' 

Cannot import dll:C:\Users\my user\AppData\Local\Temp\a random name folder\GameuxInstallHelper.dll 
,369을

어떤 아이디어가 오류를 해결하거나 코드를 수정합니까?

답변