|
CodeMacDaddy wrote: 2) Unfortunately, the call stack is not providing any "really"
useful info
Well, that should be fairly easy to fix; the library must have been debug built, otherwise you would not get the assertion about the heap. Debug built usually also means that you get a program database file (.pdb) as well which is used when populating the call stack with proper function names and such. You need to make sure that VS can find it such as putting it in the directory you're running your application in. But it might be that you haven't got the pdb-file delivered from the third party.
However, I find it a little bit odd that the DLL is debug built...
As I understand it, in order to fix your problem you have to be able to build the DLL. If you already have the source code for it, that shouldn't be too hard.
One way could be to create a new DLL project in VS and exchange the files created by the wizard with the files you got from the third party.
It may not work as my recommendation is based on a couple of assumptions, but it's a possible way forward that probably should be considered.
"It's supposed to be hard, otherwise anybody could do it!" - selfquote "High speed never compensates for wrong direction!" - unknown
|
|
|
|
|
Yes, the 3rd party lib provider only provides .dll and .lib file no .pdb file unfortunately. And yes there is a debug and release version of the .dll / .lib file when linked into my code. I have the source of the lib code to be able to built for an embedded linux platform and put the .lib file on the linux platform so I can run my app. I don't have the Microsoft project / makefile to build the DLL for the PC side otherwise I would be able to do this and further debug their source My project has been send the 3rd party hommies, so they can help debug this issue.
|
|
|
|
|
if you have the 3rd party code fix it!!! And done.
So you can work on with your project...
Press F1 for help or google it.
Greetings from Germany
|
|
|
|
|
If only it was that simple
|
|
|
|
|
Hi,
I have a MDI app with multiple document templates added in it. So there is a hierarchy of document, view and framewindow classes such that a view, document and framewnd classes are associated through a templates.
Now, there are date-wise files for each document type, i.e for a particular date, there are as many files as there are doc types. Opening a document opens it in a child window
What I want to implement is to add a drop down list to the child window which will list the other document types for that date. Selecting a different doc type from drop down should
1. Close the existing document open in the child window
2. Open the new doc of selected type for current date in the existing child window and NOT in a new child window.
I want to know if this is possible and how to go about it. I am getting confused because I am not able to figure out how this will work because I am trying to retain the old child window, which is of a particular framewnd class and open a totally new document type in this window, with which it is not associated through any doc template.
Hope I have explained my problem. Any inputs will be highly appreciated.
Thanks in advance.
Abhi
|
|
|
|
|
Hello,
Please i need a help.
I'm totally new to CORBA.
Actually, i want to communicate between 2 different applications, (written in c++),
using CORBA.
the platform of the server is windows.
Is it possible to do this communication?
if yes, is there a sample program that can help me?
Thank you in advance for you help,
Solange.
|
|
|
|
|
|
with COM?
That's mean with TCP socket?
I can't use CORBA to communicate between the applications?
|
|
|
|
|
COM(Component object modal) is one the best way to achieve inter process communication.
This is a microsoft technology for inter process communication( basically it work with RPC(remote procedure call) mechanism)
refer
http://msdn.microsoft.com/en-us/library/ms877981.aspx[^]
If u go more futuristic then Windows Communication Foundation(WCF) is another microsoft technology in .NET
I think COM is suited for your need.
CORBA is not that easy
Величие не Бога может быть недооценена.
modified on Thursday, August 20, 2009 8:46 AM
|
|
|
|
|
You are kidding right ?
I mean, you really think that somebody can explain you Corba in a simple forum reply ?
I didn't mean to sound offending, but it's just that Corba is extremly complex and there's no way you will be able to learn it just by having somebody explain a couple of things. If you really want to go on with Corba (which I'm not really sure is the best option), then I would suggest that you buy a book about it.
If you are open to other alternatives, then I suggest you describe a bit more in details what you are trying to achieve, because communicating between two applications can mean a lot of different things.
|
|
|
|
|
Thank you for your quick reply.
Actually, I have a main application, and 3 other applications.
When the main application receive a incoming call, it will test the option of the receiving stack,
and it will call the correponding application, by sending to it some parameters.
Actually, im searching for the more performing solution.
Thank you for your help,
Regards.
|
|
|
|
|
Are the applications on the same machine or different machines ?
What you have to know about Corba, is that it is used to expose objects (classes) to other applications. This way, from another application, you can access objects that are hosted in your application.
If you have to exchange data (and not really access an object from another application) between the two applications, then I would rather go for something like sockets or shared memory (a standard IPC mechanism).
|
|
|
|
|
Yes the applications are in the same machine.
and i have to send data from an application to another.
Note:
The applications are for phone calls, that's why i'm searching for the best and quick solution.
Thank you again for your time.
|
|
|
|
|
And the applications are written in the same language ?
From what you are saying, I'm really not sure that Corba is the better solution (but I also only have very limited information, so I might be wrong). You said that it is for phone calls, does it mean that you will need to transfer call data (for instance SMS, or digital data, ...) between the applications ?
Anyway, I suggest you take a look at the "Inter-process communication" section[^] here on CP:
|
|
|
|
|
I will write the applications in the same language, (i want to use C++).
Actually, the phone call that i will receive, contain options in it's stack (for exple: it's a fax call).
So i will call the application dedicated to the fax process, and i will send to this application some parameters (like the incoming phone number,...)
|
|
|
|
|
sounds almost like you need to consider something like ICE .. www.zeroc.com/[^]
'g'
|
|
|
|
|
A popular (and free) C++ CORBA implementation is TAO[^].
But I agree with previous posters - CORBA is a complex subject and you should really get a book, such as this one[^]. Good luck.
|
|
|
|
|
A previous response indicated that your applications are on the same machine. If so, then use shared memory queue. This will give you the best performance, the easiest code to write and debug and none of the headaches of CORBA or COM (or TCP/Named Pipes/etc.)
|
|
|
|
|
OK, sounds like a risky proposition to me...
1st, develop some sort of super weapon.
2nd, keep it totally secret, then ask US special forces to transport it somewhere.
3rd, When attacked by CORBA COMMANDOs, ask them politely to hand deliver some messages for you.
4th, Make sure you are a hot babe, then they will only knock you out.
As I said, more than a little risky, and also complicated. You will need to save up a lot of money for an underground lair also...
What, you didn't say COBRA?
Iain,
I have now moved to Sweden for love (awwww).
If you're in Scandinavia and want an MVP on the payroll (or happy with a remote worker), or need cotract work done, give me a job! http://cv.imcsoft.co.uk/[ ^]
|
|
|
|
|
Hi all,
i have made a worker thread and from that worker thread i am calling function to do some processing.
i have started my worker thread using this code
pThread = AfxBeginThread(Thread , (LPVOID) this);
I am terminating that thread on click event of a button, using this code
int ret = ::TerminateThread(pThread->m_hThread,NULL);
My problem is when TerminateThread line is being executed pointer never returns back i can't get its return value and lines after that piece of code is not being executed.
How to resolve this problem??
Thanks in advance...
To accomplish great things, we must not only act, but also dream;
not only plan, but also believe.
|
|
|
|
|
"_$h@nky_" wrote: How to resolve this problem??
Don't use TerminateThread, as stated in the documentation . There are much cleaner way to stop a thread than killing it brutaly. You might want to use a flag: a simple boolean that is set by your mean thread and that your worker checks to see if it has to stop. In which case, simply stop your "loop" in the worker thread.
Using TerminateThread is a very very very bad practice and should be avoided at all costs.
|
|
|
|
|
"_$h@nky_" wrote: How to resolve this problem??
Never call TerminateThread : that is the last, last, last resource. See instead [^].
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
It seems like you are terminating the same thread that is executing the specified code... Debugging will help you to identify that.
Btw, TerminateThread is not a good practice.
- ns ami -
|
|
|
|
|
ns ami wrote: It seems like you are terminating the same thread that is executing the specified code...
What's the evidence of that?
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
I tried with a sample...
- ns ami -
|
|
|
|