http://bugs.winehq.org/show_bug.cgi?id=16069
Summary: VC6 debugging not working Product: Wine Version: 1.0.1 Platform: PC OS/Version: other Status: UNCONFIRMED Severity: major Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: kresander@yahoo.com
I have used Wine to compile and run fairly large programs (more than 75 source files and 2GB, 5GB of source code). Background is available in my post at Wine User's forum under title Cannot install Visual C++ version 6.0 (VC6). My last reply in the thread is this:
+++ begin +++ So far, I have tried four projects from Windows to Linux/Wine. All compiled using VC6 on Wine and ran ok the first time. The two largest contained 78 and 105 cpp files with approximate source file sizes 2GB and 5GB.
Features used:
GUI: most standard and extended controls via dialog calls/macros and CreateWindow, various window positioning/resizing functions, messageboxes GDI: most except paths CHARS: most functions defined by <tchar.h> FILES: fopen,fread, fwrite, ftell, fseek, fclose, _findfirst, _findnext, _mkdir, remove, _tunlink MEMORY new,delete and most memory and <string.h> functions.
Did not use MFC or ATL frameworks, just plain, Windows API functions and as few of these as I could manage. Did not use Windows file and directory functions. Did not use c++ exception handling Did not use Windows memory allocation function or older mallocs.
BUT
could not get the debugging to work.
1. on entry to the Windows main program:
int PASCAL WinMain( ...) { WNDCLASS wc; MSG msg; int a = 1; // for testing debug int b = a + 1 ; // testing debug hmodule = fhInstance ; <<< put breakpoint here
Values of variables a and b were reported as unknown expressions.
2. a little bit further into WinMain at call to CreateWindow for main window:
hwndmain = CreateWindow( "GenericAppClass", ....
The program entered CreateWindow, but never returned.
Does debugging work, or have I entered unchartered waters?
+++ end +++
I don't write bigger and more resource-demanding programs than those mentioned above. The VC6 compiled these with ease, ran without a single glitch and the IDE behaved as I was used to see it. With debugging working there is no reason for me to be on Windows any more. Have wanted to leave for years.
VC6 is an excellent product (too good to be Microsoft) and it now seems it can offer cross-development on Linux. Really worth pursuing in my view.
You can reach me at kresander@yahoo.com.
Best regards Ken Resander
http://bugs.winehq.org/show_bug.cgi?id=16069
--- Comment #1 from Jeff Zaroyko jeffz@jeffz.name 2008-11-15 07:05:35 --- *** Bug 16070 has been marked as a duplicate of this bug. ***
http://bugs.winehq.org/show_bug.cgi?id=16069
Jeff Zaroyko jeffz@jeffz.name changed:
What |Removed |Added ---------------------------------------------------------------------------- Severity|major |normal
--- Comment #2 from Jeff Zaroyko jeffz@jeffz.name 2008-11-15 07:09:57 --- not major. http://bugs.winehq.org/page.cgi?id=fields.html#bug_severity
does the problem still exist if you use Wine 1.1.8?
http://bugs.winehq.org/show_bug.cgi?id=16069
--- Comment #3 from Ken Resander kresander@yahoo.com 2008-11-17 01:26:30 --- (In reply to comment #2)
not major. http://bugs.winehq.org/page.cgi?id=fields.html#bug_severity
does the problem still exist if you use Wine 1.1.8?
Yes, the problems still exist.
http://bugs.winehq.org/show_bug.cgi?id=16069
--- Comment #4 from Ken Resander kresander@yahoo.com 2008-11-18 02:32:35 --- (In reply to comment #3)
(In reply to comment #2)
not major. http://bugs.winehq.org/page.cgi?id=fields.html#bug_severity
does the problem still exist if you use Wine 1.1.8?
Yes, the problems still exist.
Minimal test program that demonstrates the problems:
// TESTDEBUG.CPP
#include <windows.h>
HWND hwndmain ; HINSTANCE hmodule ;
int aglobal ; int bglobal ;
static LRESULT CALLBACK MainWndProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam ) { switch( msg ) { case WM_CLOSE: DestroyWindow ( hWnd ) ; break ; case WM_DESTROY: PostQuitMessage( 0 ); break; default: return( DefWindowProc( hWnd, msg, wParam, lParam )); } return 0; }
int PASCAL WinMain( HINSTANCE fhInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int nCmdShow ) { WNDCLASS wc; MSG msg; int a = 1 ; int b = a + 1 ; aglobal = 10 ; bglobal = aglobal + 20 ; hmodule = fhInstance ; if( !hPrevInstance ) { wc.lpszClassName = "GenericAppClass"; wc.lpfnWndProc = MainWndProc; wc.style = CS_OWNDC | CS_VREDRAW | CS_HREDRAW; wc.hInstance = hmodule; wc.hIcon = LoadIcon( NULL, IDI_APPLICATION ); wc.hCursor = LoadCursor( NULL, IDC_ARROW ); COLORREF col = RGB(0,0,0); wc.hbrBackground = (HBRUSH)CreateSolidBrush ( col ) ; wc.lpszMenuName = "GenericAppMenu"; wc.cbClsExtra = 0; wc.cbWndExtra = 0; RegisterClass( &wc ); }
hwndmain = CreateWindow( "GenericAppClass", "Application Title" , WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_MAXIMIZE | WS_VISIBLE , 0,0 , 640 , 452, NULL, NULL, hmodule, NULL ); if ( hwndmain != NULL ) { SetWindowText ( hwndmain , "CreateWindow worked" ) ; } ; while( GetMessage( &msg, NULL, 0, 0 ) ) { TranslateMessage( &msg ); DispatchMessage( &msg ) ; } ; return msg.wParam; }
Please define as a normal Win32 Application project.
1. issue GO(F5) to let program run; shows it is working 2. place cursor on 'hmodule = fhInstance ;' line and a) go to cursor Ctrl+F10 b) inspect data for variables a, b via Shift+F9 shows error: expression cannot be evaluated. Formal parameter fhInstance inspection also not working. These are located on the stack. c) inspecting global variables aglobal and bglobal shows data inspection working for non-local data 3. single stepping by F10 to line ' hwndmain = CreateWindow( "GenericAppClass",... works 4. but program does not return after calling CreateWindow. Also, program does not go to a break point set after CreateWindow
http://bugs.winehq.org/show_bug.cgi?id=16069
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |testcase
http://bugs.winehq.org/show_bug.cgi?id=16069
--- Comment #5 from Austin English austinenglish@gmail.com 2009-05-18 10:51:54 --- Is this still an issue in current (1.1.21 or newer) wine?
http://bugs.winehq.org/show_bug.cgi?id=16069
--- Comment #6 from Ken Resander kresander@yahoo.com 2009-05-19 11:26:57 --- (In reply to comment #5)
Is this still an issue in current (1.1.21 or newer) wine?
It is still not working, but got a fatal error message that did not appear before. "MSDEV has encountered a serious problem and needs to close." It is worse than before.
http://bugs.winehq.org/show_bug.cgi?id=16069
--- Comment #7 from Austin English austinenglish@gmail.com 2009-11-19 12:30:23 --- (In reply to comment #6)
(In reply to comment #5)
Is this still an issue in current (1.1.21 or newer) wine?
It is still not working, but got a fatal error message that did not appear before. "MSDEV has encountered a serious problem and needs to close." It is worse than before.
A bit late, but apparently this bug slipped through the cracks...If that regression is still present, please run a regression test and file a bug for it: http://wiki.winehq.org/RegressionTesting
http://bugs.winehq.org/show_bug.cgi?id=16069
--- Comment #8 from Austin English austinenglish@gmail.com 2010-12-20 22:15:10 CST --- This is your friendly reminder that there has been no bug activity for a year. Is this still an issue in current (1.3.9 or newer) wine?
http://bugs.winehq.org/show_bug.cgi?id=16069
--- Comment #9 from Ken Resander kresander@yahoo.com 2010-12-21 03:58:22 CST --- (In reply to comment #8)
This is your friendly reminder that there has been no bug activity for a year. Is this still an issue in current (1.3.9 or newer) wine?
Don't know yet. Have reinstalled a dual-boot Ubuntu and Win XP, but cannot locate the VC6 install CD. Will report here when I find it.
Ken
http://bugs.winehq.org/show_bug.cgi?id=16069
Damjan Jovanovic damjan.jov@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW CC| |damjan.jov@gmail.com Summary|VC6 debugging not working |VC6 debugging not working | |when Windows version is 98 Ever Confirmed|0 |1
--- Comment #10 from Damjan Jovanovic damjan.jov@gmail.com 2011-06-20 00:27:25 CDT --- Hello Ken
I submitted a patch that should fix that MSDEV error (http://source.winehq.org/patches/data/75490).
The issue with not being able to debug local variables or single step beyond CreateWindow() happens when Wine's Windows version is set to Windows 98. When I set it to Windows XP, I can see the values of a and b, and single step beyond CreateWindow().
I've also noticed that you have to disable precompiled headers to compile your code. Is that a Windows feature, a Wine problem from before, or a recent Wine regression?
Hope you can switch to Linux now ;-) Damjan
http://bugs.winehq.org/show_bug.cgi?id=16069
--- Comment #11 from Austin English austinenglish@gmail.com 2013-11-13 16:50:53 CST --- This is your friendly reminder that there has been no bug activity for 2 years. Is this still an issue in current (1.7.6 or newer) wine? If so, please attach the terminal output in 1.7.6 (see http://wiki.winehq.org/FAQ#get_log).
https://bugs.winehq.org/show_bug.cgi?id=16069
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |ABANDONED
--- Comment #12 from Austin English austinenglish@gmail.com --- Abandoned.
https://bugs.winehq.org/show_bug.cgi?id=16069
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #13 from Austin English austinenglish@gmail.com --- Closing.