|
Hi all,
Can someone tell me how to get the messages from a child window opened with ShellExecute(...) and then respond to them. I tried setting the hwnd parameter to this->m_hWnd from a dialog app.. then i ran a spy++ and didn't see any messages going from the opened web browser back to my dialog app.
example.
From a Dialog app, i'm opening and html page in Internet Explorer and I need the Dialog app to be able to respond to dialog boxes that IE presents , like error messages and such. It sounds like i should be able to from the API docs...
-- MSDN ----------------------------
HINSTANCE ShellExecute(
HWND hwnd,
LPCTSTR lpOperation,
LPCTSTR lpFile,
LPCTSTR lpParameters,
LPCTSTR lpDirectory,
INT nShowCmd
);
hwnd
[in] Handle to a parent window. This window receives any message boxes that an application produces, such as error reporting.
...
---------------------------------
could someone let me know if my understanding of this is wrong.
Thanks for any help..
Rick
|
|
|
|
|
RickGavin wrote:
hwnd
[in] Handle to a parent window. This window receives any message boxes that an application produces, such as error reporting.
I dont think that'll work when you spawn a new app. This works only for shell commands like "open" and "print". I might be wrong though.
Nish
Author of the romantic comedy
Summer Love and Some more Cricket [New Win]
Review by Shog9
Click here for review[NW]
|
|
|
|
|
You are misunderstanding the purpose of the hwnd parameter. When you start a new process, it's off in its own process space, it is not a child of the launching process or its windows. hwnd is only used by the shell if an error occurs. hwnd is one of you windows, which is used as the parent of error dialogs if any are displayed.
--Mike--
If it doesn't move and it should: WD-40. If it moves and it shouldn't: duct tape.
1ClickPicGrabber - Grab & organize pictures from your favorite web pages, with 1 click!
My really out-of-date homepage
Sonork-100.19012 Acid_Helm
|
|
|
|
|
Thanks for setting me straight.
Since that obviously won't work, do you know a way to accomplish the task?
i.e. open a browser and then monitor it for any dialogs, and then pragmatically ok or cancel said dialog box, so that the user doesn't have to answer his/her self?
Thanks again
Rick
|
|
|
|
|
Hello,
When ever you save a document it changes the title to saved.doc or what ever the saved name is.. is there a way to prevent this from happening? I need the title of the application to stay the same even after saving.. Its probably an easy one..
Thanks,
Rob
|
|
|
|
|
Use SetTitle() and specify the caption name.
SetTitle is a member function of your document class.
|
|
|
|
|
Where would I put the code.. I have already tried this..
BOOL CMyDocumentDoc::OnSaveDocument(LPCTSTR lpszPathName)
{
SetTitle("My Document");
return CRichEditDoc::OnSaveDocument(lpszPathName);
}
And it doesnt work..
|
|
|
|
|
how about
BOOL CMyDocumentDoc::OnSaveDocument(LPCTSTR lpszPathName)
{
BOOL bRet = CRichEditDoc::OnSaveDocument(lpszPathName);
SetTitle("My Document");
return bRet;
}
I am not sure whether it works or not. I am just suspicious that OnSaveDocument will call SetTitle() automatically.
|
|
|
|
|
nope I think when this function returns the title gets changed..
Thanks though
Rob
|
|
|
|
|
Got it.. Had to over ride the SetTitle and force the name there..
Thanks,
Rob
|
|
|
|
|
I have a member variable declared as:
CArray<cpoint, cpoint=""> m_dotArray;
When I am using it, I use CArray::Add to add new dots to it. But I don't want to add duplicate dot, so I derived CMyArray in the following manner:
template <class TYPE, class ARG_TYPE>
class CMyArray : public CArray < TYPE, ARG_TYPE >
{
public:
int AddThis(ARG_TYPE newElement);
};
template < class TYPE, class ARG_TYPE >
int CMyArray < TYPE, ARG_TYPE > ::AddThis(ARG_TYPE newElement)
{
ARG_TYPE existingElement;
for ( int i = 0; i < GetSize(); i ++ )
{
existingElement = GetAt(i);
if ( existiingElement == newElement )
return -1;
}
Add(newElement);
return 0;
}
but when compiling the following error is reported:
error LNK2001: unresolved external symbol "public: int __thiscall CMyArray < class CPoint, class CPoint > ::AddThis(class CPoint)" ......
What did I miss?
TIA!!
|
|
|
|
|
Is this code visible to your project ? Is it part of your project ?
Have you ever tried std::vector ? Unlike CArray, it's powerful, flexible and does not suck.
Christian
No offense, but I don't really want to encourage the creation of another VB developer.
- Larry Antram 22 Oct 2002
C# will attract all comers, where VB is for IT Journalists and managers - Michael
P Butler 05-12-2002
Again, you can screw up a C/C++ program just as easily as a VB program. OK, maybe not
as easily, but it's certainly doable. - Jamie Nordmeyer - 15-Nov-2002
|
|
|
|
|
yes, I have added both the .h and .cpp to my project. Also, I have include the header file when I declare the member variable.
I did a few Build->Clean and Rebuild All, in the hope of getting rid of this problem. But without any success.
I didn't know anything about std::vector, I would try to read something about it. Before that, what is the correct way of deriving any class from CArray? I think I am not following the correct syntax.
|
|
|
|
|
If you search for 'vector graus' in the articles you should find my article on vectors.
I don't know how you would derive from CArray. I'd probably try to contain a CArray instead and see if that worked, assuming I had to.
Christian
No offense, but I don't really want to encourage the creation of another VB developer.
- Larry Antram 22 Oct 2002
C# will attract all comers, where VB is for IT Journalists and managers - Michael
P Butler 05-12-2002
Again, you can screw up a C/C++ program just as easily as a VB program. OK, maybe not
as easily, but it's certainly doable. - Jamie Nordmeyer - 15-Nov-2002
|
|
|
|
|
std::vector - code bloat...
CAtlArray
Tim Smith
I'm going to patent thought. I have yet to see any prior art.
|
|
|
|
|
CAtlArray, hmm, I should keep it in mind for future use, since I don't need the serialization function here at all.
Thank you.
|
|
|
|
|
lol - you just don't give up, do you ? I've never used CAtlArray, is it part of WTL ? How complete is it ? That is, does it offer algorithms etc, or is it merely another container of the sort I could write in an afternoon ?
Christian
No offense, but I don't really want to encourage the creation of another VB developer.
- Larry Antram 22 Oct 2002
C# will attract all comers, where VB is for IT Journalists and managers - Michael
P Butler 05-12-2002
Again, you can screw up a C/C++ program just as easily as a VB program. OK, maybe not
as easily, but it's certainly doable. - Jamie Nordmeyer - 15-Nov-2002
|
|
|
|
|
Christian Graus wrote:
or is it merely another container of the sort I could write in an afternoon ?
For 10 points, explain how a "mere container" is a bad thing.
-c
Please stand by
|
|
|
|
|
I'm with Cristian. std::vector is the way to go.
- Nitron
"Those that say a task is impossible shouldn't interrupt the ones who are doing it." - Chinese Proverb
|
|
|
|
|
Is the function implementation in the header file (or a #included inline file)? If it is in a .cpp file, then the compiler won't find it when instantiating the template, and so the function will be missing at link-time.
Dave
|
|
|
|
|
ah Yes. I implemented it in cpp file. After I delete the cpp and move the function definition to the .h file, everything is okay.
Thank you so much! I am so happy.
|
|
|
|
|
Thank god someone answered your QUESTION.
The style police should take a rest.
Tim Smith
I'm going to patent thought. I have yet to see any prior art.
|
|
|
|
|
Like you, I have noticed that there are a lot of posters that preach certain methods for doing specfic tasks. While, I think it is OK to provide alternative appoaches to solve a problem...I also think that you should try to answer the question, as posed.
Gary Kirkham
A working Program is one that has only unobserved bugs
|
|
|
|
|
Be fair - I NEVER recommend STL unless I can also answer the question, or the question has been answered. I may not have got it right, but I had a guess.
And the MFC container classes are still a pile of fetid refuse.
Christian
No offense, but I don't really want to encourage the creation of another VB developer.
- Larry Antram 22 Oct 2002
C# will attract all comers, where VB is for IT Journalists and managers - Michael
P Butler 05-12-2002
Again, you can screw up a C/C++ program just as easily as a VB program. OK, maybe not
as easily, but it's certainly doable. - Jamie Nordmeyer - 15-Nov-2002
|
|
|
|
|
Christian Graus wrote:
And the MFC container classes are still a pile of fetid refuse.
Is there an article you can direct me to that will show what you're talking about? If not, I see it as a great opportunity to once again demonstrate your overnight article-writing abilities .
Regards,
Alvaro
Well done is better than well said. -- Benjamin Franklin
(I actually prefer medium-well.)
|
|
|
|