views:

88

answers:

3

The project my team has been working on has reached a point where we need to deploy it to computers without the development environment (Visual Studio 2005) installed on them. We fixed the dependency issues we had at first, but we're still having issues.

Now, once the installer is finished, our project gets stuck somewhere before entering WinMain. It only takes up 13MB of RAM, but takes up 50% of the cpu cycles.

Are there any suggestions as to how debug this problem?

Edit: Clarification - this is a C++ project.

A: 

You might have to resort to old-time debugging - outputting print statements to a console that refer to what part of the application has been run successfully. Without the IDE installed on the target machine, there really aren't many options for debugging.

taserian
We tried. The program's never entering WinMain, so we have no way to see that.
Andrei Krotkov
any objects declared globally? any constructors being executed?
Vulcan Eager
of course there're options for debugging! windows debugger is lightweight and can practically be deployed w/o installation.now, as already suggested, take a snapshot of the busy thread (that'd be the main thread) with process explorer and post it here.
+2  A: 

Is it possible the hang occurs while some global variable is initialized? That happens before WinMain, and from a global variable's constructor any code could be run. Also, take a look at the busy thread's stack using Process Explorer (make sure you deploy the PBD in order to get a meaningful stack trace). The stack trace should make it obvious where is that thread hanging.

eran
A: 

If your running vista or windows 7 you can create a memory dump from task manager (right click and select create dump file) and then transfer that to your dev computer, load the symbols and it will show you where the program was at that time.

Lodle