|
1000 *TH*A*N*X* PALLINI,
now it work's an no sry i was to fast, so i didn't remember the __stdcall !!!!!!!!!!!
Thanx again & best regards
Croc
|
|
|
|
|
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.
[my articles]
|
|
|
|
|
This is exactly what CPallini and I were talking about when you posted about this before. The C++ side needs to have __stdcall calling convention. This makes the order parameters are put on and pulled off the stack (and which side is responsible for cleanup) compatible with VB. Otherwise your stack is trashed on the return from the call, hence the error your're seeing. You're fortunate, in the past the error would have been silent and your C++ would have blown up spectacularly the next time it made a function call .
You need to find the definition of WIN32DLL02_API and make sure it includes __declspec(__stdcall)
Nothing is exactly what it seems but everything with seems can be unpicked.
|
|
|
|
|
Hi Matthew,
i added
#define WIN32DLL02_API __declspec(_stdcall) in the definition of WIN32DLL02_API, but without this the code worked too !???
Best regards
Croc
|
|
|
|
|
Hi friends,
I want to send my dialog box to the system-tray when "WINDOWS key + D" is pressed(Show Desktop),
but I don't know which message is sent.
I have captured all messages that has sent to my dialog by SPY++, but none of the is acceptable.
Since my dialog has no border (it has no caption) and subsequently it has no minimized property in the dialog properties, I don't know how to handle the message.
By the way, I handled "OnActivate(UINT nState, CWnd* pWndOther, BOOL bMinimized)" message, but the message is sent for Activating and Inactivating.
But I want to handle a message which is sent when "Windows key+ D" is pressed merely.
Thanks.
|
|
|
|
|
you don't have to capture the message.
you just have to design your application so that it is minimized to the System tray.
same would happen then if you manually minimize it (with the upper right buttons), if you press the task bar button to reduce it, if you press Win+D (show Desktop), or Win+M (minimize all)...
|
|
|
|
|
Would you mind explaining me how can I design my application to send the dialo to the System tray automatically by minimizing the Windows (Win+D Or Win+M)?
|
|
|
|
|
Stop being rude. He is not being paid to help you out.
Nobody can give you wiser advice than yourself. - Cicero
.·´¯`·->Rajesh<-·´¯`·.
...formerly known as brahmma
Codeproject.com: Visual C++ MVP
|
|
|
|
|
You considered Mohammad's question to be rude? As I see it, he was just asking for clarification.
"Normal is getting dressed in clothes that you buy for work and driving through traffic in a car that you are still paying for, in order to get to the job you need to pay for the clothes and the car and the house you leave vacant all day so you can afford to live in it." - Ellen Goodman
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
I thought he could have asked "Would you please", instead of "Would you mind".
Nobody can give you wiser advice than yourself. - Cicero
.·´¯`·->Rajesh<-·´¯`·.
...formerly known as brahmma
Codeproject.com: Visual C++ MVP
|
|
|
|
|
Yes, he "could" have, but why, when they are both valid forms of asking the same question? Consider:
Would you please help me find the store?
Would you mind helping me find the store?
"Normal is getting dressed in clothes that you buy for work and driving through traffic in a car that you are still paying for, in order to get to the job you need to pay for the clothes and the car and the house you leave vacant all day so you can afford to live in it." - Ellen Goodman
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
I really don't know, but I felt that "please" would have been a more polite form. My apologies, if I am wrong.
Nobody can give you wiser advice than yourself. - Cicero
.·´¯`·->Rajesh<-·´¯`·.
...formerly known as brahmma
Codeproject.com: Visual C++ MVP
|
|
|
|
|
Please Lord for me please.
|
|
|
|
|
Would you mind explaining it to me?
Nobody can give you wiser advice than yourself. - Cicero
.·´¯`·->Rajesh<-·´¯`·.
...formerly known as brahmma
Codeproject.com: Visual C++ MVP
|
|
|
|
|
you pwned me with the Win+D, because the OP specified it explicitely, but I still think that he is trying to do something badly. Windows is what it is, what trying to change its behavior...?!
|
|
|
|
|
toxcct wrote: you pwned me with the Win+D, because the OP specified it explicitely,
I think the underlined part is what you missed.
Nobody can give you wiser advice than yourself. - Cicero
.·´¯`·->Rajesh<-·´¯`·.
...formerly known as brahmma
Codeproject.com: Visual C++ MVP
|
|
|
|
|
Is your application capable of getting into the system tray? Have you completed that part?
Nobody can give you wiser advice than yourself. - Cicero
.·´¯`·->Rajesh<-·´¯`·.
...formerly known as brahmma
Codeproject.com: Visual C++ MVP
|
|
|
|
|
Yes, my application is capable to go to the system tray.
|
|
|
|
|
is it when you minimize it, or you have to specify it with a button or a menu item like "Go to the Tray Now !" ?
if the later, you have to override the minimize message (WM_MINIMIZE) and make it go to the tray in this event handler...
|
|
|
|
|
Register a hot key with RegisterHotKey for WinKey+D. See here[^] for an example. In your message handler for the hot key message, put the logic to send your window to the system tray.
Nobody can give you wiser advice than yourself. - Cicero
.·´¯`·->Rajesh<-·´¯`·.
...formerly known as brahmma
Codeproject.com: Visual C++ MVP
|
|
|
|
|
no dude, please ! don't send him in this direction !
he doesn't need at all to know that it's Win+D which made his application minimized to the tray.
What he wants is overriding WM_MINIMIZE to put his apps to the tray.
|
|
|
|
|
toxcct wrote: WM_MINIMIZE
Is there a message like that in MFC?
Nobody can give you wiser advice than yourself. - Cicero
.·´¯`·->Rajesh<-·´¯`·.
...formerly known as brahmma
Codeproject.com: Visual C++ MVP
|
|
|
|
|
my bad, WM_SIZE or WM_ACTIVATE.
You can also get notified of the minimize command before it is carried out using WM_SYSCOMMAND.
also, the IsIconic() function is there to know if an application is minimized...
|
|
|
|
|
toxcct wrote: WM_SYSCOMMAND.
Overriding the WM_SYSCOMMAND is the best way if one should execute some code before an app is being minimized. But the WinKey+D combination will not send your application this message!
toxcct wrote: also, the IsIconic() function is there to know if an application is minimized...
The op has a two-staged problem. At first, he must detect WinKey+D. And then, he must minimize it. I suggested him how to detect WinKey+D. He could add a handler which would be executed while this combination is pressed. Now, the second stage is to put the code within this handler, which sends his app into the system tray.
Nobody can give you wiser advice than yourself. - Cicero
.·´¯`·->Rajesh<-·´¯`·.
...formerly known as brahmma
Codeproject.com: Visual C++ MVP
|
|
|
|
|
Rajesh R Subramanian wrote: At first, he must detect WinKey+D
i'm absolutely not sure of this.
here is what I'm thinking he has (but as long as he didn't replyed to my question, I can't know for sure).
he implemented a "Go To tray" function in his application. but he certainly throws his Apps to the tray when selecting that action on a Menu or with a button.
but what he wants is sending his apps to the tray whenever the application is minimized.
Win+D is a Windows implementation to show the desktop. it throws a Minimize event to every application in the taskbar.
so the OP doen't have to know that it is a Win+D, but only that the application is told to minimize (then, to the tray)...
get me ?
|
|
|
|