PDA

View Full Version : Not able to make VC6 work in a new VBP 8.3 env


djo2112
04-16-2013, 07:51 AM
I'm not having any success building a C++ project in VBP 8.3.
This is a clean install on a 2008 vm. (The previous build script was VBP6 on 2003)

The MakeVC6 command is:
"C:\Program Files (x86)\Microsoft Visual Studio\Common\MSDev98\Bin\msdev.exe" "C:\Build\Source Code\VC Projects\Proj\Proj.dsp" /MAKE "Proj - Win32 Release" /REBUILD

This works from the command line and there it spawns the additional process box.
From VBP I get an rc.exe application error dialog: "The application was unable to start correctly" and the output tab contains:

Deleting intermediate files and output files for project 'Proj - Win32 Release'.
Compiling resources...
Error spawning rc.exe
Tool execution canceled by user. (because I clicked OK in the error dialog)

My assumption was that since this is a new environment, paths (and libs?) must be incorrect.
I did the normal debugging to make sure the command line and VBP variables were the same but they are slightly different.
They are different because of the "Program Files" / "Program Files (x86)" from the previous server to the new server.
The DEVSTUDIO_NET_DIR is C:\Program Files (x86)\Microsoft Visual Studio.
I honestly don't know what's correct. I am not a C++ developer but I noticed that rc, cl and midl are integral to compiling/building.
When I did a "where rc.exe", in both VBP and the command line they reported:
C:\Program Files (x86)\Microsoft Visual Studio\Common\MSDev98\Bin\RC.EXE
C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bin\RC.Exe

I tried removing rc.* from MSDev98 and still receive the same error so I might be barking up the wrong tree.
I'm posting in the hope that a savvy C++ builder could point me in the right direction.
Thanks for your time.

kinook
04-16-2013, 08:08 AM
You should call msdev.com rather than msdev.exe when building from the command-line (the Make VC6 action does this by default, but the exe can be overridden on the Options tab).

The Make VC6 step does not use the DEVSTUDIO_NET_DIR global macro, but looks up the location of msdev itself.

It sounds like an issue with msdev when building from the command line (what the Make VC6 action ultimately invokes to actually build a workspace or project). You can verify this by checking the 'Show command-line...' checkbox on the Options tab, rebuilding the step, then copying and pasting the msdev command-lines from the build output to a Command Prompt and running it from there.

If it works from a Command Prompt, it may be initialized with the environment needed for VC6 builds, and you may need to either start VBP from that command prompt (type start visbuildpro in the command prompt) or initialize the VC6 environment in the Make VC6 step (similar to the bottom of http://www.kinook.com/Forum/showthread.php?t=4500, but instead calling the VC6 batch file).

djo2112
04-16-2013, 08:12 AM
>> You should call msdev.com rather than msdev.exe

That did the trick!
Thank you very much!