Usually this work is done by other guys who are in charge of this field,I just give them the relative docs.But as for one of them having trouble of health,I should do this myself,I'm a fresher for using the IS,but after several trial,I know how to do my topic said,OK,here is the code below: btw,wish my partner get well as soon as possilbe,however,I can't handle so much affairs myself.
export prototype MyFunction(HWND);
// the code below realize the function I said in my topic
// the .net framework are forced to install on the target PC
// the DirectX End User Runtime is also dealt as above
// this is just an example,usually you should detect the target PC
// to know the status, according this,u do something.
// To Do: Create a custom action for this entry-point function:
function MyFunction(hMSI)
STRING svResult;
begin if (FindFile(INSTALLDIR, " dotnetfx.exe " ,svResult) = 0 )
then LaunchAppAndWait (INSTALLDIR ^ " dotnetfx.exe " , "" ,WAIT);
endif;
if (FindFile(INSTALLDIR ^ " DXSupport " , " DXSETUP.exe " ,svResult) = 0 )
then LaunchAppAndWait (INSTALLDIR ^ " DXSupport " ^ " DXSETUP.exe " , "" ,WAIT);
endif;
DeleteFile(INSTALLDIR ^ " dotnetfx.exe " );
DeleteDir(INSTALLDIR ^ " DXSupport " ,ALLCONTENTS);
end;
// the code below realize the function I said in my topic
// the .net framework are forced to install on the target PC
// the DirectX End User Runtime is also dealt as above
// this is just an example,usually you should detect the target PC
// to know the status, according this,u do something.
// To Do: Create a custom action for this entry-point function:
function MyFunction(hMSI)
STRING svResult;
begin if (FindFile(INSTALLDIR, " dotnetfx.exe " ,svResult) = 0 )
then LaunchAppAndWait (INSTALLDIR ^ " dotnetfx.exe " , "" ,WAIT);
endif;
if (FindFile(INSTALLDIR ^ " DXSupport " , " DXSETUP.exe " ,svResult) = 0 )
then LaunchAppAndWait (INSTALLDIR ^ " DXSupport " ^ " DXSETUP.exe " , "" ,WAIT);
endif;
DeleteFile(INSTALLDIR ^ " dotnetfx.exe " );
DeleteDir(INSTALLDIR ^ " DXSupport " ,ALLCONTENTS);
end;