|
How does one normally debug a dll?
I agree one has to start the process which calls the dll.
In my case the process is the JVM.
"java osnat.HelloWorld" starts this process under the command box.
I assume there should be some way to start it under the Visual Studio debug mode?
If I really have no other choice, then I could try to attach to a process that is in some loop, but I hope there is a more direct method.
Ilan
|
|
|
|
|
Yes, the "executable for debug session" will be the full path to the java executable, and the program arguments would be (the full path to?) osnat.HelloWorld .
I would think that would do it. Note that you are not normally able to set breakpoints in a DLL until the DLL has been loaded by the debugger, which usually happens the first time the process-being-debugged loads the DLL.
Peace!
-=- James Please rate this message - let me know if I helped or not!<HR> If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong! Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road! See DeleteFXPFiles
|
|
|
|
|
James thanks,
This turns out to be messy. I couldn't figure out how to put the command (with full path?) once and for all into the command line.
Up would come a message box and if I have to enter full path each time, I might just as well attach to a process.
Up until now I've always used c++ and it was simple to put the break point in the calling routine and then just step into the routine under the dll.
With java I first thought maybe I could use a get character from keyboard to trap it and then attach to the process, but then I remembered the old int 3, which may do the job for me. (In any case I have to recompile the dll with a one line change when I want to debug it.)
Int 3 is now __debugbreak(), but it does the job. Up comes a message box telling me my program has crashed and if I want to send a report to Microsoft? There is a debug button which allows me to attach a debugger, which is what I wanted to do in the first place.
In short, this looks like the easiest solution.
You asked me to reply if your suggestion helped. I couldn't reply so long as I didn't have a solution. You should be aware that even your offer to help is of great value. It gives additional thought for consideration which is always of great value when you are stuck with only your own way of thinking.
So, if you helped? I think the answer is always YES! Thanks.
Ilan
|
|
|
|
|
Is it possible to send a command to the operating system without causing a command window to pop up? This seems to be the behaviour of system(command), any alternatives?
Thanks
|
|
|
|
|
nadiric wrote: Is it possible to send a command to the operating system without causing a command window to pop up?
Yes.
nadiric wrote: This seems to be the behaviour of system(command), any alternatives?
CreateProcess() .
"Approved Workmen Are Not Ashamed" - 2 Timothy 2:15
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
|
Hello comunity,
i use in some code places PeekMessage, but in some cases program never come out from
this loop!
QUESTION: is there any way to check out how many messages are in the queue, in the loop?
Just simple while() loop like this:
while(::PeekMessage(&Message, NULL, NULL, NULL, PM_NOREMOVE))
{
::TranslateMessage(&Message);
::DispatchMessage(&Message);
}
thanks for any help
break;
|
|
|
|
|
break; wrote: PM_NOREMOVE))
Shouldn't this be PM_REMOVE ?
|
|
|
|
|
Hello Prasad,
thanks for help, i try now with PM_REMOVE, i post the result here!
regards
break;
|
|
|
|
|
Hello,
yes, with PM_REMOVE is better now!
regards
break;
|
|
|
|
|
Hi All,
How do i go about allowing the user to select just a path instead of file name?
Thanks in advance...
|
|
|
|
|
karldwmoore wrote: How do i go about allowing the user to select just a path instead of file name?
CFileDialog::GetPathName() and then trim the string that you get, to get the path of the file.
For this you can use CString:ReverseFind()
Somethings seem HARD to do, until we know how to do them.
_AnShUmAn_
|
|
|
|
|
Hi,
I know how to get the path of a given filename, but is there away of just selecting a path i.e. folder without selecting a file? The way many installer work?
Thanks again
|
|
|
|
|
Instead of wedging that functionality into CFileDialog , try using SHBrowseForFolder(...) instead.
Peace!
-=- James Please rate this message - let me know if I helped or not!<HR> If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong! Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road! See DeleteFXPFiles
|
|
|
|
|
Just what i needed, is there a way of expanding it to allow networked drives or hidden shares i.e. "\\200.200.2.1\c$" because you cant type anything in.
|
|
|
|
|
You can use the BIF_EDITBOX flag. Have a look at the information on the BROWSEINFO structure for more details.
Peace!
-=- James Please rate this message - let me know if I helped or not!<HR> If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong! Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road! See DeleteFXPFiles
|
|
|
|
|
I have a project writed in MFC (Dialog) and button that must print something.
CDC dcPrint;
dcPrint.Attach(dlgPrint.GetPrinterDC());
On Windows98 it does't work and on Windows2000/NT it works.
But if I print something from this computer(Windows98) from another programm (for example Notepad or Word) printer works property.
Please, help me, why it does not work???
|
|
|
|
|
Have you added
dcPrint.m_bPrinting = TRUE; statement
after the above mentioned code ??
Appu..
"My blood group is not B+.But I have it my blood"
|
|
|
|
|
Hi All,
Given a directory of files say, 1.txt, 2.txt etc How do i go about processing the first file then looping around until all files have been processed. Is there a way if providing a path then processing all the files there?
Thanks in advance..
|
|
|
|
|
Take a pick from one of these:
1.
_findfirst()
_findnext()
_findclose()
2.
FindFirstFile()
FindNextFile()
FindClose()
3.
(MFC class) CFileFind
Alcohol. The cause of, and the solution to, all of life's problems - Homer Simpson
|
|
|
|
|
|
Your'e welcome. That's the avaiable ways, AFAIK. There might be a ATL/STL way too, but I'm not sure.
Alcohol. The cause of, and the solution to, all of life's problems - Homer Simpson
|
|
|
|
|
WTL has the CFindFile class
|
|
|
|
|
And four way that is easy use of DlgDirList it fills that list with file name or folder
|
|
|
|
|
how to change the background color of the button and also for the tab controls
Arise Awake Stop Not Till ur Goal is Reached.
|
|
|
|