Connecting Tech Pros Worldwide Forums | Help | Site Map

debug on client's computer (without debugger?)

=?Utf-8?B?V0o=?=
Guest
 
Posts: n/a
#1: Apr 11 '08
I have a VC++ application that just crashes on one tester/client's machine.
It runs fine everywhere else.

What are the other options to debug (on the client's machine) without
installing VC++ (on the clinet's machine)? Is this possible at all? Thanks.

WJ

=?Utf-8?B?V0o=?=
Guest
 
Posts: n/a
#2: Apr 11 '08

re: debug on client's computer (without debugger?)


To add some more details, this is a managed-unmanaged mixed application, not
a pure managed C++ application.

Thanks.

WJ

"WJ" wrote:
Quote:
I have a VC++ application that just crashes on one tester/client's machine.
It runs fine everywhere else.
>
What are the other options to debug (on the client's machine) without
installing VC++ (on the clinet's machine)? Is this possible at all? Thanks.
>
WJ
Cholo Lennon
Guest
 
Posts: n/a
#3: Apr 11 '08

re: debug on client's computer (without debugger?)


WJ wrote:
Quote:
To add some more details, this is a managed-unmanaged mixed
application, not a pure managed C++ application.
>
Thanks.
>
WJ
>
"WJ" wrote:
>
Quote:
>I have a VC++ application that just crashes on one tester/client's
>machine. It runs fine everywhere else.
>>
>What are the other options to debug (on the client's machine) without
>installing VC++ (on the clinet's machine)? Is this possible at all?
>Thanks.
>>
>WJ
1st: Deploy your application with .pdb information.

2nd: Install a debugger who can understand a .pdb file like WinDbg (Debugging
tools for Windows, freeware, 16/20Mb,
http://www.microsoft.com/whdc/devtoo...g/default.mspx) or IDA Pro
(http://www.hex-rays.com/idapro/)

3rd: Run you application under the debugger.

Regards

--
Cholo Lennon
Bs.As.
ARG



=?Utf-8?B?V0o=?=
Guest
 
Posts: n/a
#4: Apr 11 '08

re: debug on client's computer (without debugger?)


Where should the .pdb files be installed? Thanks!

"Cholo Lennon" wrote:
Quote:
WJ wrote:
Quote:
To add some more details, this is a managed-unmanaged mixed
application, not a pure managed C++ application.

Thanks.

WJ

"WJ" wrote:
Quote:
I have a VC++ application that just crashes on one tester/client's
machine. It runs fine everywhere else.
>
What are the other options to debug (on the client's machine) without
installing VC++ (on the clinet's machine)? Is this possible at all?
Thanks.
>
WJ
>
1st: Deploy your application with .pdb information.
>
2nd: Install a debugger who can understand a .pdb file like WinDbg (Debugging
tools for Windows, freeware, 16/20Mb,
http://www.microsoft.com/whdc/devtoo...g/default.mspx) or IDA Pro
(http://www.hex-rays.com/idapro/)
>
3rd: Run you application under the debugger.
>
Regards
>
--
Cholo Lennon
Bs.As.
ARG
>
>
>
>
David Lowndes
Guest
 
Posts: n/a
#5: Apr 11 '08

re: debug on client's computer (without debugger?)


>I have a VC++ application that just crashes on one tester/client's machine.
Quote:
>It runs fine everywhere else.
>
>What are the other options to debug (on the client's machine) without
>installing VC++ (on the clinet's machine)? Is this possible at all? Thanks.
Use the remote debugger - in later versions of VS you can run the
remote debugger on the client computer from a share on your dev
machine. In earlier versions it requires a minimal install of the
remote debugger component.

Dave
Cholo Lennon
Guest
 
Posts: n/a
#6: Apr 11 '08

re: debug on client's computer (without debugger?)


WJ wrote:
Quote:
Where should the .pdb files be installed? Thanks!
>
Usually in the same directory of your executable. Some debuggers allow you to
load the pdb file from a custom location.

--
Cholo Lennon
Bs.As.
ARG



=?Utf-8?B?V0o=?=
Guest
 
Posts: n/a
#7: Apr 11 '08

re: debug on client's computer (without debugger?)


Hi Cholo,
Do you know if WinDBG supports managed-unmanaged mixed applications? I have
troulbe to get the symbol files loaded.

Thanks.

WJ

"Cholo Lennon" wrote:
Quote:
WJ wrote:
Quote:
Where should the .pdb files be installed? Thanks!
>
Usually in the same directory of your executable. Some debuggers allow you to
load the pdb file from a custom location.
>
--
Cholo Lennon
Bs.As.
ARG
>
>
>
>
Cholo Lennon
Guest
 
Posts: n/a
#8: Apr 11 '08

re: debug on client's computer (without debugger?)


WJ wrote:
Quote:
Hi Cholo,
Do you know if WinDBG supports managed-unmanaged mixed applications?
I have troulbe to get the symbol files loaded.
>
AFAIK yes. Maybe you need SOS.dll. Take a look to:

"SOS: It's Not Just an ABBA Song Anymore"
http://msdn2.microsoft.com/es-ar/mag...38(en-us).aspx

"SOS Debugging Extension (SOS.dll)"
http://msdn2.microsoft.com/en-us/lib...64(VS.80).aspx

--
Cholo Lennon
Bs.As.
ARG



David Lowndes
Guest
 
Posts: n/a
#9: Apr 11 '08

re: debug on client's computer (without debugger?)


>Will you please explain a little detail about the share part? Is the share
Quote:
>on the DEV machine or on the client's machine?
The share is on the machine you have VS installed on.

Have a look for "How to: Set Up Remote Debugging" on MSDN for more
information.

Dave
=?Utf-8?B?V0o=?=
Guest
 
Posts: n/a
#10: Apr 11 '08

re: debug on client's computer (without debugger?)


Hi Cholo,
This may sould a dumb question -- I do need to copy source files to the
client computer also, correct?

Thanks.

WJ

"Cholo Lennon" wrote:
Quote:
WJ wrote:
Quote:
Hi Cholo,
Do you know if WinDBG supports managed-unmanaged mixed applications?
I have troulbe to get the symbol files loaded.
>
AFAIK yes. Maybe you need SOS.dll. Take a look to:
>
"SOS: It's Not Just an ABBA Song Anymore"
http://msdn2.microsoft.com/es-ar/mag...38(en-us).aspx
>
"SOS Debugging Extension (SOS.dll)"
http://msdn2.microsoft.com/en-us/lib...64(VS.80).aspx
>
--
Cholo Lennon
Bs.As.
ARG
>
>
>
>
=?Utf-8?B?V0o=?=
Guest
 
Posts: n/a
#11: Jun 27 '08

re: debug on client's computer (without debugger?)


To add some more details, this is a managed-unmanaged mixed application, not
a pure managed C++ application.

Thanks.

WJ

"WJ" wrote:
Quote:
I have a VC++ application that just crashes on one tester/client's machine.
It runs fine everywhere else.
>
What are the other options to debug (on the client's machine) without
installing VC++ (on the clinet's machine)? Is this possible at all? Thanks.
>
WJ
Cholo Lennon
Guest
 
Posts: n/a
#12: Jun 27 '08

re: debug on client's computer (without debugger?)


WJ wrote:
Quote:
To add some more details, this is a managed-unmanaged mixed
application, not a pure managed C++ application.
>
Thanks.
>
WJ
>
"WJ" wrote:
>
Quote:
>I have a VC++ application that just crashes on one tester/client's
>machine. It runs fine everywhere else.
>>
>What are the other options to debug (on the client's machine) without
>installing VC++ (on the clinet's machine)? Is this possible at all?
>Thanks.
>>
>WJ
1st: Deploy your application with .pdb information.

2nd: Install a debugger who can understand a .pdb file like WinDbg (Debugging
tools for Windows, freeware, 16/20Mb,
http://www.microsoft.com/whdc/devtoo...g/default.mspx) or IDA Pro
(http://www.hex-rays.com/idapro/)

3rd: Run you application under the debugger.

Regards

--
Cholo Lennon
Bs.As.
ARG



=?Utf-8?B?V0o=?=
Guest
 
Posts: n/a
#13: Jun 27 '08

re: debug on client's computer (without debugger?)


Where should the .pdb files be installed? Thanks!

"Cholo Lennon" wrote:
Quote:
WJ wrote:
Quote:
To add some more details, this is a managed-unmanaged mixed
application, not a pure managed C++ application.

Thanks.

WJ

"WJ" wrote:
Quote:
I have a VC++ application that just crashes on one tester/client's
machine. It runs fine everywhere else.
>
What are the other options to debug (on the client's machine) without
installing VC++ (on the clinet's machine)? Is this possible at all?
Thanks.
>
WJ
>
1st: Deploy your application with .pdb information.
>
2nd: Install a debugger who can understand a .pdb file like WinDbg (Debugging
tools for Windows, freeware, 16/20Mb,
http://www.microsoft.com/whdc/devtoo...g/default.mspx) or IDA Pro
(http://www.hex-rays.com/idapro/)
>
3rd: Run you application under the debugger.
>
Regards
>
--
Cholo Lennon
Bs.As.
ARG
>
>
>
>
David Lowndes
Guest
 
Posts: n/a
#14: Jun 27 '08

re: debug on client's computer (without debugger?)


>I have a VC++ application that just crashes on one tester/client's machine.
Quote:
>It runs fine everywhere else.
>
>What are the other options to debug (on the client's machine) without
>installing VC++ (on the clinet's machine)? Is this possible at all? Thanks.
Use the remote debugger - in later versions of VS you can run the
remote debugger on the client computer from a share on your dev
machine. In earlier versions it requires a minimal install of the
remote debugger component.

Dave
=?Utf-8?B?V0o=?=
Guest
 
Posts: n/a
#15: Jun 27 '08

re: debug on client's computer (without debugger?)


Hi David,
Will you please explain a little detail about the share part? Is the share
on the DEV machine or on the client's machine? And I assume you'll put Exe
and DLLs under the share? Thanks!

WJ

"David Lowndes" wrote:
Quote:
Quote:
I have a VC++ application that just crashes on one tester/client's machine.
It runs fine everywhere else.

What are the other options to debug (on the client's machine) without
installing VC++ (on the clinet's machine)? Is this possible at all? Thanks.
>
Use the remote debugger - in later versions of VS you can run the
remote debugger on the client computer from a share on your dev
machine. In earlier versions it requires a minimal install of the
remote debugger component.
>
Dave
>
Cholo Lennon
Guest
 
Posts: n/a
#16: Jun 27 '08

re: debug on client's computer (without debugger?)


WJ wrote:
Quote:
Where should the .pdb files be installed? Thanks!
>
Usually in the same directory of your executable. Some debuggers allow you to
load the pdb file from a custom location.

--
Cholo Lennon
Bs.As.
ARG



=?Utf-8?B?V0o=?=
Guest
 
Posts: n/a
#17: Jun 27 '08

re: debug on client's computer (without debugger?)


Hi Cholo,
Do you know if WinDBG supports managed-unmanaged mixed applications? I have
troulbe to get the symbol files loaded.

Thanks.

WJ

"Cholo Lennon" wrote:
Quote:
WJ wrote:
Quote:
Where should the .pdb files be installed? Thanks!
>
Usually in the same directory of your executable. Some debuggers allow you to
load the pdb file from a custom location.
>
--
Cholo Lennon
Bs.As.
ARG
>
>
>
>
Cholo Lennon
Guest
 
Posts: n/a
#18: Jun 27 '08

re: debug on client's computer (without debugger?)


WJ wrote:
Quote:
Hi Cholo,
Do you know if WinDBG supports managed-unmanaged mixed applications?
I have troulbe to get the symbol files loaded.
>
AFAIK yes. Maybe you need SOS.dll. Take a look to:

"SOS: It's Not Just an ABBA Song Anymore"
http://msdn2.microsoft.com/es-ar/mag...38(en-us).aspx

"SOS Debugging Extension (SOS.dll)"
http://msdn2.microsoft.com/en-us/lib...64(VS.80).aspx

--
Cholo Lennon
Bs.As.
ARG



David Lowndes
Guest
 
Posts: n/a
#19: Jun 27 '08

re: debug on client's computer (without debugger?)


>Will you please explain a little detail about the share part? Is the share
Quote:
>on the DEV machine or on the client's machine?
The share is on the machine you have VS installed on.

Have a look for "How to: Set Up Remote Debugging" on MSDN for more
information.

Dave
=?Utf-8?B?V0o=?=
Guest
 
Posts: n/a
#20: Jun 27 '08

re: debug on client's computer (without debugger?)


Hi Cholo,
This may sould a dumb question -- I do need to copy source files to the
client computer also, correct?

Thanks.

WJ

"Cholo Lennon" wrote:
Quote:
WJ wrote:
Quote:
Hi Cholo,
Do you know if WinDBG supports managed-unmanaged mixed applications?
I have troulbe to get the symbol files loaded.
>
AFAIK yes. Maybe you need SOS.dll. Take a look to:
>
"SOS: It's Not Just an ABBA Song Anymore"
http://msdn2.microsoft.com/es-ar/mag...38(en-us).aspx
>
"SOS Debugging Extension (SOS.dll)"
http://msdn2.microsoft.com/en-us/lib...64(VS.80).aspx
>
--
Cholo Lennon
Bs.As.
ARG
>
>
>
>
Cholo Lennon
Guest
 
Posts: n/a
#21: Jun 27 '08

re: debug on client's computer (without debugger?)


WJ wrote:
Quote:
Hi Cholo,
This may sould a dumb question -- I do need to copy source files to
the client computer also, correct?
>
Not necessarily. Pdb file has enough information stored in it (check
http://msdn2.microsoft.com/en-us/lib...d1(VS.80).aspx) to allow a
complete debug session.

Try debugging this simple program (using their pdb and exe files and using/not
using source code) to check what WinDbg shows you (load application and press F5
(go), then open the disassembly window):

// Try disabling compiler optimizations before compiling
// for better understanding
#include <iostream>

using namespace std;

struct Test
{
Test() { cout << __FUNCTION __ << endl; }
~Test() { cout << __FUNCTION __ << endl; }
void Foo() { cout << __FUNCTION __ << endl; }
};

int main(int, char**)
{
// Force a breakpoint into debugger
__asm int 3;

// Test code
int a = 10;
cout << a + 20 << endl;

Test test;
test.Foo();

Test pTest = new Test;
pTest->Foo();
delete pTest;

return 0;
}


Of course, with WinDbg you don't have the same level of details as VS integrated
debugger (unless you load the source code), but in general it's enough (at least
for me). A disassembler/debugger like IDA Pro is another case. It's really
fantastic, you don't need the source code. Even without pdb file IDA shows you a
big amount of information that simplify the debugging process.

--
Cholo Lennon
Bs.As.
ARG




Closed Thread