|
With a second CString and CString.Format.
Christian
NO MATTER HOW MUCH BIG IS THE WORD SIZE ,THE DATA MUCT BE TRANSPORTED INTO THE CPU. - Vinod Sharma
Anonymous wrote:
OK. I read a c++ book. Or...a bit of it anyway. I'm sick of that evil looking console window.
I think you are a good candidate for Visual Basic. - Nemanja Trifunovic
|
|
|
|
|
CString str;
for(int i=0;i<3;i++)
{
str.Format("Object %i",i);
xxx.Find(str);
}
~RaGE();
|
|
|
|
|
Hello all!
Here is some "strange" behaviour of CreateProcess (or winword, I don't know)
I wanted to launch winword from my application and be notified when the user close the session I opened, so I used CreateProcess and WaitForSingleObject .
Here is the code sample from MSDN:
<br />
SECURITY_ATTRIBUTES sec;<br />
sec.bInheritHandle = FALSE;<br />
sec.lpSecurityDescriptor = NULL;<br />
sec.nLength = sizeof(SECURITY_ATTRIBUTES);<br />
<br />
STARTUPINFO si;<br />
::ZeroMemory(&si, sizeof(STARTUPINFO));<br />
si.cb = sizeof(STARTUPINFO);<br />
PROCESS_INFORMATION pi;<br />
<br />
if(::CreateProcess(NULL, <br />
"C:\\Program Files\\Microsoft Office\\Office\\winword.exe / / C:\\STPMesagElec.doc", NULL,NULL, TRUE, NORMAL_PRIORITY_CLASS, NULL, NULL, &si, &pi)) <br />
{<br />
WaitForInputIdle(pi.hProcess, 3000);<br />
WaitForSingleObject(pi.hProcess,INFINITE);<br />
}<br />
else {<br />
int err = GetLastError();<br />
::MessageBeep(0);<br />
::MessageBox(NULL, "CreateProcess() failed.\nCheck Path for WinWord.Exe.",<br />
"Error", MB_SETFOREGROUND);<br />
<br />
return;<br />
}<br />
<br />
::CloseHandle(pi.hThread);<br />
::CloseHandle(pi.hProcess);<br />
Now, the result:
- If I use CreateProcess as above, but without the 2 slashes, it works only when there is no other instance of Word already opened; if a session already exists, WaitForSingleObject doesn't block anymore
- If I use CreateProcess with the two slashes, it works just as I need it.
I noticed that with at least one of the slashes, CreateProcess creates a new instance of winword.exe, else it opens a new document in the already existing process.
Also, with other applications (eg Notepad or even Excel), it works fine without the slashes.
Do you think that this is abnormal behaviour?
Why it needs the slashes? (i discovered this by pure luck, it isn't documented anywhere)
Enis Arif
-----------
"I am enough of an artist to draw freely upon my imagination. Imagination is more important than knowledge. Knowledge is limited. Imagination encircles the world." (Albert Einstein)
|
|
|
|
|
Winword does check if it is already running. It registers in the ROT as an automation server. If You create a second instance only a new document is created because winword knows about its predecessor.
For the second slash I dont know but this can fool the command line parser of winword so it creates always a new instance regardless of previously existing ones. But there should also be a documented switch there (/automation ???)
|
|
|
|
|
Hi all!
I created a class derived from CStatic (so I can use a specific font, colors, and so on) but I want to associate a callback function when I click on the control (like a norma button).
Can I do this or do I need to derive from CButton instead ??
Thanks
|
|
|
|
|
It must be possible. Search in CodeProject for the CHyperLink calss from Chris Maunder, I think it is an enhanced (and clickable) CStatic.
~RaGE();
|
|
|
|
|
Yes, you can do it, map the BN_CLICKED message for it, but make sure you have set he SS_NOTIFY style in the resources otherwise you will not get it.
Roger Allen
Sonork 100.10016
Were you different as a kid? Did you ever say "Ooohhh, shiny red" even once? - Paul Watson 11-February-2003
|
|
|
|
|
dear all,
how do i insert a newline character in an multiline MFC textfield (CEdit)
i tried \n\r but it shows 2 junk characters in the textfield
|
|
|
|
|
Make sure the edit box has the 'multiline' property checked, and I think it's \r\n.
Christian
NO MATTER HOW MUCH BIG IS THE WORD SIZE ,THE DATA MUCT BE TRANSPORTED INTO THE CPU. - Vinod Sharma
Anonymous wrote:
OK. I read a c++ book. Or...a bit of it anyway. I'm sick of that evil looking console window.
I think you are a good candidate for Visual Basic. - Nemanja Trifunovic
|
|
|
|
|
From Mike's FAQ[^] :
4.12: How do I create a newline in a multi-line edit control?
Use "\r\n" to create a newline. If you use "\r" or "\n" or even "\n\r" you'll see little blocks in the control.
~RaGE();
|
|
|
|
|
hi,
can someone tell me where to find a file picker component for VC++?
greetz,
willem
[]D [] []D []
|
|
|
|
|
got the solution:
FileDialog dlg(TRUE, NULL, NULL, OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT, "Exe Files (*.exe)|*.exe|All Files (*.*)|*.*||", this);
dlg.m_ofn.lpstrTitle = "Select the File";
if(dlg.DoModal() == IDOK)
{
m_strExtractorPath = dlg.GetPathName();
}
[]D [] []D []
|
|
|
|
|
Hi !
I'm not sure that's what you want but you can use the CFileDialog (take a look at the help) from the MFC. You can specify some parameters (load or save file dialog, the file extentions, ...).
|
|
|
|
|
your right... thnx
[]D [] []D []
|
|
|
|
|
Hum, yes, I saw you found the same solution
|
|
|
|
|
Hello,
I've created an ActiveX control and added CColorPropPage to go with the Back- and ForeColor StockObjects, this gives me a propertypage with 16 colors but I want more! Are these 16 colors by design or is it because I have an old platform SDK thus using old dlls? Also, I want to get notified when a color changes, does this mean I have to change a Stock property to a Custom property or can I get notifications from a Stock Property?
Thanks in advance,
van Padoea.
|
|
|
|
|
Taken from Microsoft's .NET help:
--------------------------------------------------------------
An unsuccessful attempt was made to form a qualified name.
For example, make sure that your code does not contain a function declaration where the function name begins with ::.
The following sample generates C2825:
// C2825.cpp
typedef int i;
int main() {
int* p = new int;
p->i::i(); // C2825
// try the following line instead
// p->i::~i();
}
--------------------------------------------------------------
Can someone be so kind and explain this to me in plain English ?
|
|
|
|
|
eladho wrote:
p->i::i(); // C2825
Are you trying to call the constructor here? That happened in the previous line...
|
|
|
|
|
João Paulo Figueira wrote:
Are you trying to call the constructor here?
No, it's not my code.
It's a sample given by Microsoft, and this example should illustrate the error, which I have no idea what it really is.
Anyway, ignore the example if you wish. My question was actually- what this error means as I get this error on a totally different case.
Elad.
|
|
|
|
|
I'm searching for a handle leak that's driving me crazy...
http://www.codeproject.com/useritems/HTMLCtrlSample.asp[^]
And meanwhile the customer could work with the new program version...
So I would like to know how many handles leaked can a Win2k Professional OS support.
Any idea?
|
|
|
|
|
We recently had a resource leak that took forever to track down. I hav't looked at the article you posted a link for, but our problem turned out to be a call to SHGetFileInfo() which was returning a handle to an icon that we were responsible for releasing, so I would suggest checking any calls in SH... function to make sure that your releasing any resources it my be allocating for you.
Roger Allen
Sonork 100.10016
Were you different as a kid? Did you ever say "Ooohhh, shiny red" even once? - Paul Watson 11-February-2003
|
|
|
|
|
Let me give you a hint:
I've looked at your article http://www.codeproject.com/useritems/HTMLCtrlSample.asp[^], and it leaks a lot more than just three handles(1 sem + 2cs). It also causes browser control to leak 3 pretty large memory objects...
|
|
|
|
|
OK, how did you've seen that?
and do you know how can I avoid it?
Thank you in advance.
|
|
|
|
|
If I'd know how to do it (how to avoid to leak those things the semaphore and the critical sections) it would be great, I need to finish a program that depends on this.
Sometimes I feel nude in front of the problems, this is what happens when one has no time to learn and need to give always results as fast as it can be... It would be perfect if you'd tell me how to solve the problem or how to detect it, in order to learn a little bit more and to program better.
Thanks a lot.
|
|
|
|
|
I am on deadline. ( My house to be re-plumb in few days. )
Anyway, you are leaking what it looks like HTMLBody?
Brian
|
|
|
|