i use intallshield to do this.my sample code:
GetSystemInfo (OS,nvResult,svResult); //Get system Operation system type
//Disable the component that not for windowsNT or Win2000
if (nvResult = IS_WINDOWSNT) then
// XCopyFile (SUPPORTDIR^"UKEY.inf",WINDIR^"inf",COMP_NORMAL|LOCKEDFILE);
szDllName = WINSYSDIR^"setupapi.dll";
UseDLL(szDllName);
bCopy =SetupCopyOEMInfA(SUPPORTDIR^"UKEY.inf",NULL,0,8,NULL,0,0,NULL) ;
UnUseDLL(szDllName);
// if (!bCopy) then
// exit;
// endif;
endif;
if (nvResult = IS_WINDOWS9X) then
bCopy=XCopyFile (SUPPORTDIR^"UKEY.sys",WINDIR^"system32\\drivers",COMP_NORMAL|LOCKEDFILE);
bCopy=XCopyFile (SUPPORTDIR^"UKEY.inf",WINDIR^"inf",COMP_NORMAL|LOCKEDFILE);
szDllName = WINSYSDIR^"kernel32.dll";
UseDLL(szDllName);
DeleteFileA(WINDIR^"Inf\\Drvidx.bin");
bDelete =DeleteFileA(WINDIR^"Inf\\Drvdata.bin");
UnUseDLL(szDllName);
// if (!bDelete) then
// exit;
// endif;
endif;