• 15
• 15
• 11
• 9
• 10

# Distribution error diagnosis.

This topic is 2763 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

## Recommended Posts

Hey there I am trying to distribute a program compiled in VS2010 and it uses DX9.

I am using NSIS with these files being installed to my install directory.

File "Jun2010_d3dx9_43_x64.cab"
File "Jun2010_d3dx9_43_x86.cab"
File "dxdllreg_x86.cab"
File "dxupdate.cab"
File "DSETUP.dll"
File "dsetup32.dll"
File "DXSETUP.exe"

File "vcredist_x86.exe"

Then I am running the two .exe files.

nsExec::Exec '"$INSTDIR\temp\vcredist_x86.exe /q:a /c:"VCREDI~1.EXE /q:a /c:""msi exec /i vcredist.msi /qn"" "' ;I believe this line is failing. If there is a problem. Pop$0 # return value/error/timeout

MessageBox MB_ICONINFORMATION|MB_OK "$(^Name) The installer may pause temporarily as your DirectX Version is checked." nsExec::Exec '"$INSTDIR\temp\DXSETUP.exe" /silent'

The program gets past the d3dx9_43.dll missing problem and now loads up the window as if about to start working then it freezes and windows 7 says its not working anymore. Its written and runs fine on 7.

I use the following includes.
#include <windows.h>
#include <mmsystem.h>
#include <d3d9.h>
#include <d3dx9.h>

#include <stdio.h>
#include <stdlib.h>

I have installed a program using DX and the C++ distributable for MS VS 2008 before but before I did not use the code I am using now to try and install the C++ distributable.

If DX crashes it tells you whats its missing, if C++ doesn't work I would expect this error to happen. I downloaded the vcredist_x86.exe again over the top of the one I had stored previously. But in my original installer I had some cab files and a install.exe I am not sure where I got them from but they did the job for my older applications. I am assuming this is the problem, can anyone validate my diagnosis or spot an error?

I am running a test installing the redist seperately from the installer to check my results.