When I take over just the .exe to other machines that do not have PureBasic the program won't run.
It immediately comes up with Illegal Operation. at 0167:00407355
Any ideas what I am doing wrong? Is there some run-time item I am not transfering? Or perhaps a compile switch I should be setting?
Is there some way of checking what may be wrong, short of removing chunks from it, re-compiling, porting it over and so on?
The program uses screen mode graphics and sound so requires DirectX. DirectX on the source machine is version 8 and the two other machines have DirectX 6.1 and 9 so I don't think this is the problem area.
The program uses OGG and JPEG decoders.
I am also using the following code:-
Code: Select all
;Sound is playing trap
Procedure IsSoundPlaying()
Address=IsSound(1) ;Cause always 1
If Address=0
ProcedureReturn 0
EndIf
*DSB.IDirectSoundBuffer=PeekL(Address)
*DSB\GetStatus(@Status)
If Status=1 Or Status=5
ProcedureReturn 1
EndIf
ProcedureReturn 0
EndProcedure