|
Okey mil10.
I am using an activex control (particularly a microsoft web browser) in an MFC application.
Can I place my drawings in the OnPaint() function of the dialog which holds the activex control ?? If yes, would it be drawn on top of the activex control or in the dialog's client area ???
thanx alot
llp00na
|
|
|
|
|
Hi all,
I have a problem and I hope you can Solve it for me,
I want to send a CWindowDC to another computer through network!!!
How can I do this?
Please help me,
Thanks.
Every new thing you learn,Gives you a new personality.
|
|
|
|
|
Hum, and why do you want to do such a thing ??? You cannot do that. This is a device context and contains informations about your display and things like that. So it is totally ridiculous to send that on a network.
Why do you want to do such a thing ?
|
|
|
|
|
Maybe it is strange,
but I want to do this to send a picture to another computer (Desktop)
Is there a better way?
Every new thing you learn,Gives you a new personality.
|
|
|
|
|
And why don't you simlply send the picture ?
|
|
|
|
|
Does anyone know whether it is possible to run an NT Service under a Windows Server 2003 environment. I have a Windows NT service created using the CNTService class that's been posted on the internet a number of times, and I am trying to run the same service under Windows Server 2003. Unfortunately a DLL that I create an instance for does not get created correctly.
Regards,
Simes
Simes
|
|
|
|
|
Simes wrote: Unfortunately a DLL that I create an instance for does not get created correctly.
Why? Are you receiving compiler/linker errors?
"Let us be thankful for the fools. But for them the rest of us could not succeed." - Mark Twain
"There is no death, only a change of worlds." - Native American Proverb
|
|
|
|
|
I can't seem to create the instance of the VB DLL that I am trying to access. It says it can't create the object, and yet I have an import statement at the top of my code for the NTService which ensure that the VB DLL is known about.
|
|
|
|
|
Simes wrote:
I can't seem to create the instance of the VB DLL that I am trying to access.
How are you trying to do this?
"Let us be thankful for the fools. But for them the rest of us could not succeed." - Mark Twain
"There is no death, only a change of worlds." - Native American Proverb
|
|
|
|
|
I have a VB DLL with a class know as clsMain. And within that there is a public sub routine called start which is then called from the NT Service.
In the NT Service when it runs it calls a procedure known as checkForFile. This checks a directory to see if a file exists. The directory in question is the ftproot one. I do a call to ::CoInitialize and then do a call to CreateInstance as follows;
hr = receiptThread.CreateInstance(__uuidof(clsMain));
The receiptThread object has been declared further up as follows;
_clsMainPtr receiptThread;
At the top of the code I have the following imports declared;
#import "c:\windows\system32\receiptThreadDLL.dll" \
no_namespace (The DLL in question has been already placed in the directory)
#import "C:\Program Files\Common Files\System\ADO\msado15.dll" \
no_namespace rename("EOF", "EndOfFile")
I then check the return value from the call to CreateInstance by doing the following;
if(FAILED(hr))
{
I write out to a log file the text "could not create receiptThread object in checkForFile()"
return;
}
|
|
|
|
|
Simes wrote: if(FAILED(hr))
What is the actual value of hr ?
That aside, why is the service itself not checking for the existence of the file?
"Let us be thankful for the fools. But for them the rest of us could not succeed." - Mark Twain
"There is no death, only a change of worlds." - Native American Proverb
|
|
|
|
|
The value of HR is -2147221164 which seems to be related to a Class not being registered. But this is confusing as the same files work on an NT box without any problems. I have MDAC 2.8 loaded as well.
The service does do the checking for the existence of the file within the procedure checkForFile. It calls the VB DLL to then take the file, which is zipped up and extract it out and then load into an Oracle database. It's just that when the development was done for this (about 3 years ago) the extraction and loading of data into an Oracle DB was done in VB, and the people who were able to write service code at the time produced it in C++, so we had to ensure that the VB could get called from the service.
|
|
|
|
|
Simes wrote: The value of HR is -2147221164 which seems to be related to a Class not being registered.
Right. Have you registered the VB DLL (using regsvr32)?
"Let us be thankful for the fools. But for them the rest of us could not succeed." - Mark Twain
"There is no death, only a change of worlds." - Native American Proverb
|
|
|
|
|
Yep I have. I have created an unregister and register command file that calls regsvr32.
|
|
|
|
|
I am using CFileDialog for a "save as" where I have to choices for file types: All Files or Avi Files.
I just noticed something very strange and wondered if anyone else has seen the same thing, or better knows how to fix it.
First of all, the "save as" function is done correctly, so 99% of the problem is solved.
It comes up with All Files and indeed shows all files. The problem comes when I change to show only avi files. The window goes blank. If I go back to all files, it stays blank. Only if I choose a different folder is it refreshed properly (with either all or avi files).
I tried it in Paint and there if you change the file type, the window refreshes correctly. In CFileDialog it doesn't.
My code is:
CFileDialog filedlg( FALSE, "avi", // default extension
"mip1.avi", // current file name
OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST | OFN_LONGNAMES,
"All Files (*.*)|*.*|Avi Files (*.avi)|*.avi||", NULL);
Has anyone else seen this, or can tell me what is wrong?
Thanks,
Ilan
|
|
|
|
|
Try using the following code - it should work just fine. Good luck!
CFileDialog filedlg( FALSE, "avi",
"mip1.avi",
OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST | OFN_LONGNAMES,
"All Files (*.*)\0*.*\0Avi Files (*.avi)\0*.avi\0", NULL);
|
|
|
|
|
Thanks for the suggestion, but it doesn't work. When I use \0 in place of |, it kills the functionality. Even All files don't appear properly.
I'm going back to what I had since that works much better.
|
|
|
|
|
Strange.
Is this the same in Release and in Debug ?
Do you have the same problem if you have more than two filters (try adding an Mpeg Files (*.mpeg)|*.mpeg ?
What if you exchange All Files and Avi Files in the string (so that the default extension is also the one that comes as forst in the string ) ?
~RaGE();
|
|
|
|
|
That was a great idea to try the Release as well as the Debug. I didn't think of that.
Unfortunately, it also has the problem in Release.
I also added mpeg and it indeed gave me 3 choices as expected. Still the refresh problem is there.
I looked in a couple of other programs I have and the problem exists there as well. I just never noticed it until today. Maybe it is connected to .NET which I added fairly recently? Hard to believe, but who knows. It is strange that I never would have seen this before.
BTW, I have an avi file in the directory, so even if I put avi files first I will still see them properly. It is only when I pull down the combo box and change the file type that the refresh fails. I'm really stuck as to why.
|
|
|
|
|
Unbelievable, it is the .NET!
I can compile without it so I did so.
Without .NET it works like a charm.
I'll bet this is a bug Microsoft doesn't know about.
|
|
|
|
|
Just out of curiousity: does the behaviour remain if you set the OFN_EXPLORER flag as well?
I'm thinking about some events that does not occur if the OFN_EXPLORER flag is omitted, e.g. OnTypeChange.
--
Roger
It's supposed to be hard, otherwise anybody could do it!
|
|
|
|
|
That was an idea worth investigating. It turns out that OFN_EXPLORER has no connection to the problem. I added the flag and it works correctly when "Use managed extensions" is No and incorrectly when it is Yes.
Now I have complete control of when it appears. Unfortunately, in the real world I need managed extensions since I use the .NET, but at least I know where the problem is. That is more than I knew when I started to ask questions on the board.
The bottom line: the code project is very useful....
|
|
|
|
|
IlanTal wrote: ...I need managed extensions...
Is this a Managed C++ question? If so, have you tried here?
"Let us be thankful for the fools. But for them the rest of us could not succeed." - Mark Twain
"There is no death, only a change of worlds." - Native American Proverb
|
|
|
|
|
Now, thanks to this board, I know it is a problem with managed extensions. When I started, it never occured to me that the problem could be there.
|
|
|
|
|
Your code snippet works fine for me.
What happens if you use GetOpenFileName() instead?
"Let us be thankful for the fools. But for them the rest of us could not succeed." - Mark Twain
"There is no death, only a change of worlds." - Native American Proverb
|
|
|
|