|
So why not be proactive rather than reactive? In other words, why not just disallow multiple instance to begin with?
"A good athlete is the result of a good and worthy opponent." - David Crow
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
And if an application closes all other instances of itself, how could there ever be multiple
instances of itself?
"Posting a VB.NET question in the C++ forum will end in tears." Chris Maunder
|
|
|
|
|
the problem is that when customer in some circomstances closes the application by clicking on x, the application looks like to be oppened but it is still running in process list and when they attempt to reopen the appplication, two would be running and so on. the problem is that this just happen sometimes and not all the time. I could not be able to duplicate the problem in my work station and can not understand what really happens.
Regards,
|
|
|
|
|
see ma frnd there are many ways to do that, but what is ur req, one way u can query the process list of system to find the instance, 2nd u can setup a hook to taskman or read the taskman list get the pid and kill it, let me knw, i wil give u the code, i will try not promise
|
|
|
|
|
thanks for the help I think it is good to check the task manager's process list and if multiple copy of the program are running kill it and reopen it.
regards,
|
|
|
|
|
You said you check for does your program is exist or no
I think some days ago I saw a thread on the codeproject about this search on the comments for see this thread.
|
|
|
|
|
in the thread ...
CString ThreadStr ;
ThreadStr = "hiya" ;
PostMessage((HWND)lParam,WM_USER_MYTHREAD_MESSAGE,NULL,(LPARAM)new CString(ThreadStr)) ;
in the dialog ...
LRESULT MyAppDlg::OnMyThreadMessage(WPARAM wParam, LPARAM lParam)
{
CString* cs = (CString*)lParam;
How do I delete the new CString() ?
|
|
|
|
|
daveyerwin wrote: LRESULT MyAppDlg::OnMyThreadMessage(WPARAM wParam, LPARAM lParam)
{
CString* cs = (CString*)lParam;
delete cs;
codito ergo sum
|
|
|
|
|
5!
"Posting a VB.NET question in the C++ forum will end in tears." Chris Maunder
|
|
|
|
|
Hello,
I have an application built with Framework1.1.
1. Will my application work in a machine where only 2.0 is present?
2. what are the steps i must do in order to make my 1.1 application work
with 2.0?
Thanks!
|
|
|
|
|
Tal S. wrote: 2. what are the steps i must do in order to make my 1.1 application work
with 2.0?
Install the .NET Framework version 1.1 (and service pack)
"Posting a VB.NET question in the C++ forum will end in tears." Chris Maunder
|
|
|
|
|
Did you mean to install 2.0 .Net framework?
What if the application uses MFC6 or MFC (compiled and built at VS 2003)? Will I get any errors?
|
|
|
|
|
Tal S. wrote: Did you mean to install 2.0 .Net framework?
No. You stated that 2.0 was on the machine and not 1.1, right? .NET framework versions should
be backward compatible - your app built on 1.1 should run on 2.0.
At least that's what MS claims
Only if it doesn't work then you could try installing 1.1 I suppose. Running multiple framework
versions side-by-side is supported as well.
Mark
"Posting a VB.NET question in the C++ forum will end in tears." Chris Maunder
|
|
|
|
|
I did try. I installed both 1.1 and 2.0 .Net frameworks and still it is not working.
When I run it at debug mode,I get exception before I even see my code.
The exception is at ntdll.dll. I do not know what is wrong...
Do you have any direction?
Thanks!
|
|
|
|
|
Are you running in a debugger? If not, you should be.
When the exception occurs you can look at the call stack for the thread it occurred on and trace
back to the point in your code causing the exception.
Is this a managed app? Are you compiling for CLR and using managed code?
Mark
"Posting a VB.NET question in the C++ forum will end in tears." Chris Maunder
|
|
|
|
|
I am running the application at debug mode.
As I understand, most of the code written at C# and has wrappers for unmanaged C++
(For the parts which are unmanaged and written at VC7/MFC7). It is all build at VS2003 and run well at 1.1. But! When installing the ,Net 2.0, build it, is has exception at ntdll.dll, before I can see any of the private code at the call stack. I can only see at the call stack that it has connection to ntdll.dll but no code available (assembly only!).
Does have any idea what to do next?
|
|
|
|
|
I can't imagine what's happening. If it's an MFC app, does it even make it to the app class
constructor? If so, does it make it to InitInstance()? etc...
"Posting a VB.NET question in the C++ forum will end in tears." Chris Maunder
|
|
|
|
|
It is C++/MFC application which uses C# by wrappers.
It does not make it to InitInstance(). It fails before, not at my code - at the c++ libraries. If I press continue (not break) at the debug mode, it passes the InitInstance, then the application is runnig until the first time it see any c++ like: CTime.
It seems like something at the environmet is not OK. I do not know where to look for it.
|
|
|
|
|
Tal S. wrote: If I press continue (not break) at the debug mode, it passes the InitInstance
Is it a first-chance exception? If so then it got handled by the DLL.
At least that brings you to a place you can track in your code.
Still nothing sounds related to .NET. The C# code is in a DLL?
"Posting a VB.NET question in the C++ forum will end in tears." Chris Maunder
|
|
|
|
|
Not all of the C# is at dll. some of it are at libs. Is it matter?
|
|
|
|
|
I'm just wondering if you're using a DLL that needs .NET 2.0 with an app that's using 1.1.
Did everything work fine before .NET 2.0 was installed?
"Posting a VB.NET question in the C++ forum will end in tears." Chris Maunder
|
|
|
|
|
It is an option. Maybe one of the DLL needs 2.0 and it was using 1.1.
I have to go step by step - I guess.
The application was runnig at 1.1 but I am not sure all of the DLLs where OK.
I think that maybe using VS2005 will solve it.
|
|
|
|
|
Tal S. wrote: think that maybe using VS2005 will solve it.
At least all the code would for sure be using the same libraries
"Posting a VB.NET question in the C++ forum will end in tears." Chris Maunder
|
|
|
|
|
Sometimes I'm wondering some people says that their program run good on the debug but not on release or like Tal S. problem but I dont know why I didnt get like these errors never!?
Did you have these problems?
|
|
|
|
|
Nope thank goodness
I've never once mixed C# in my C++ code - actually I've never used C#!
The code is being run in debug mode the OP stated...
It's really hard to debug by proxy!
"Posting a VB.NET question in the C++ forum will end in tears." Chris Maunder
|
|
|
|