|
If i'm not wrong you need to use the ATL Class CAdapt to return the adress of the ptr itself and not of the smartptr like this:
vector<CAdapt<IMessagePtr>> x;
Cheers,
Joao Vaz
A Programming Language is a tool that has profound influence on our thinking habits -The late giant Edsger Dijkstra 1930 - 2002
And if your dream is to care for your family, to put food on the table, to provide them with an education and a good home, then maybe suffering through an endless, pointless, boring job will seem to have purpose. And you will realize how even a rock can change the world, simply by remaining obstinately stationary. -
|
|
|
|
|
If MS overrode the & operator, then yes, you have to use CAdapt.
Tim Smith
"Programmers are always surrounded by complexity; we can not avoid it... If our basic tool, the language in which we design and code our programs, is also complicated, the language itself becomes part of the problem rather that part of the solution."
Hoare - 1980 ACM Turing Award Lecture
|
|
|
|
|
Tim Smith wrote:
overrode the & operator, then yes, you have to use CAdapt.
Yeap, I did checked this after your reply at
ATL archives[^]
Cheers,
Joao Vaz
A Programming Language is a tool that has profound influence on our thinking habits -The late giant Edsger Dijkstra 1930 - 2002
And if your dream is to care for your family, to put food on the table, to provide them with an education and a good home, then maybe suffering through an endless, pointless, boring job will seem to have purpose. And you will realize how even a rock can change the world, simply by remaining obstinately stationary. -
|
|
|
|
|
ATL archives[^]
Cheers,
Joao Vaz
A Programming Language is a tool that has profound influence on our thinking habits -The late giant Edsger Dijkstra 1930 - 2002
And if your dream is to care for your family, to put food on the table, to provide them with an education and a good home, then maybe suffering through an endless, pointless, boring job will seem to have purpose. And you will realize how even a rock can change the world, simply by remaining obstinately stationary. -
|
|
|
|
|
Retrieve prompt message in a file from command MsDos
Hi,
I create a batch file , execute the batch file with shellexecute and I would like to retrieve the prompt message to a file for checking the status of the processing.
Best Regards
youssef
|
|
|
|
|
Try ShellExecute(NULL, "open", "bat_file.bat", ">out_file", NULL, SW_HIDE);
rechi
|
|
|
|
|
Hello
I want to save information on my application using MFC and not SDK functions like WritePrivateProfileString()
Any help?
Thank you
|
|
|
|
|
See CWinApp::WriteProfile[Int|String|Binary]. These methods write to .ini files and registry, depending on call to CWinApp::SetRegistryKey.
Tomasz Sowinski -- http://www.shooltz.com
What is "scratch" and why can everything be made from it?
|
|
|
|
|
Hi,
Can any one tell me if/how to shutdown windows from VC. I want it as I often leave my PC running gathering results, but I would like the PC to powerdown once it has finished getting the results.
Cheers,
Nick;P
|
|
|
|
|
Checkout the PSK for the System Shutdown Functions. ExitWindowsEx() or InitiateSystemShutdownEx() should do the job.
bibamus, edamus, cras moriemur [eat, drink, for tomorrow we die]
|
|
|
|
|
Use ExitWindowsEx (its in the Platform SDK). However if you are running NT/2000/XP you must use AdjustTokenPriveges first to enable the the SE_SHUTDOWN_NAME privilege. You also need to make darn sure that you have saved any data before initiating the shutdown because once the process starts you may not get the chance!
JohnJ
Life is hard and then you die!
http://www.rainbow-innov.co.uk[^]
|
|
|
|
|
To powerdown the PC you need to call ExitWindowsEx(). (The more fance InitiateSystemShutdown(Ex) API is not able to powerdown a machine )
You need to enable the SE_SHUTDOWN_NAME privilege first using AdjustTokenPrivileges().
However, if you are not that much interested in the details, but just want to put it to work, take a look at the down.exe command line tool from my LS-Tools freeware collection (Link below). You can just spawn it as external program and it also allows you to suspend or hibernate the machine and much more things.
--
Daniel Lohmann
http://www.losoft.de
(Hey, this page is worth looking! You can find some free and handy NT tools there )
|
|
|
|
|
OS: US Win2K, locale: US, VC++ 6.0
I have been developing an internation app (5 langs) and cannot use UNICODE strings, only ANSI. At runtime user changes the app language:
- creation of the font with the Russian_charset
- assigning the font to controls
- redrawing the dialog
Standard Windows controls (button, radio, checkbox, static) display BAD characters. It seems controls are using default US charset and not russian charset.
I have OWNER-DRAW controls in dialog and these controls display Russian text CORRECTLY.
When I draw ( pDC->DrawText(.....) ) some russian text using font with russian charset it display the text OK.
Here's an example of my code:
///////////////////////////////////////////////////////////////
// constructor of dialog
fnt = new CFont(); // dynamically creating font
LOGFONT lf;
....
lf.lfCharSet = RUSSIAN_CHARSET;
....
fnt->CreateFontIndirect( &lf );
/////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////
// OnInitDialog
....
GetDlgItem(IDC_RADIO1)->SetFont( fnt );
....
GetDlgItem(IDC_RADIO1)->SetWindowText( str );
/////////////////////////////////////////////////////////////////
Has somebody any idea how to solve my problem????
Thanks in advance
Miro
|
|
|
|
|
How should MSVC++ 6.0 project executable be compiled to enable WindowsXP ClearType antialiasing in its controls?
Cryst
|
|
|
|
|
I forget the criteria for ClearType rendering, but if you use a good large TrueType font in all your controls AND the system is configured to use ClearType by default, then it should work i'd think. Or, you could probably force it by using the CLEARTYPE_QUALITY quality flag when creating the font.
---
Shog9
If I could sleep forever, I could forget about everything...
|
|
|
|
|
After I added the IProvideClassInfo interface to my objects. It can run now. However, for the script below, it runs correctly.
-------------------------------------
dim cnt
set cnt = Application.Documents
-------------------------------------
However, for the code below, it raised runtime error:
Object required: 'Application.Documents.Count'
-------------------------------------
dim cnt
set cnt = Application.Documents.Count
-------------------------------------
In Documents, I've already implemented a property Count for the enumeration.
STDMETHOD(get_Count)(LONG* pVal);
Anything wrong ?
|
|
|
|
|
dim myobj,cnt
set myobj = CreateObject("Application.Documents")
cnt = myobj.Count
STL is a religeon. Enquiries to Reverend Christian Graus
|
|
|
|
|
Hello,
I have various child control windows in my CDialogBar derived class and would like to make intializations to them after the DialogBar windows have been created. What message should I use? WM_INITDIALOG is not available to CDialogBar.
Thanks!
JennyP
|
|
|
|
|
Override the Create() method, and call the base class. If it returns successfully, do your initialization.
---
Shog9
If I could sleep forever, I could forget about everything...
|
|
|
|
|
How can i have a popup menu displayed when i right click on the empty space of menu bar?
|
|
|
|
|
You can check for right click on the menu bar by handling WM_NCRBUTTONDOWN (or related messages) in your mainframe class (provided you use MFC, else handle the message in the WndProc of your main window). the nHitTest parameter (or wParam if SDK) will contain the value HTMENU (=5). For more info, check out CWnd::OnNcRButtonDown or CWnd::OnNcHitTest in the docs.
The popup is displayed by using TrackPopupMenu.
Cheers
Steen.
"To claim that computer games influence children is ridiculous. If Pacman had influenced children born in the 80'ies we would see a lot of youngsters running around in dark rooms eating pills while listening to monotonous music"
|
|
|
|
|
hi all,
i want to know when recv() function will return.
apart from the buff is full, i experience that it will return sometimes. but, i don't so sure when such situation will happen.
how can i control when the recv() return? or, is it in random manner?
try to give me some idea!
thanks,
jim
|
|
|
|
|
recv() function returns when it has received some data. We cannot predict how many bytes it returns. This depends on your network and the buffer and various other factors.
For example if the sender has sent a string "hello world", this might come in any of the following ways or even other ways.
1 single packet - "hello world" - recv() returns 11
2 packets - "he" and "llo world" - recv() returns 2 and 9
3 packets - "he", "llo w" and "orld" - recv() returns 2, 5 and 4
3 packets - "hello", " w" and "orld" - recv() returns 5, 2 and 4
What I am trying to put through is that you need to loop your recv() call till you are sure all the data has come, probably by using some kind of termination code. SMTP uses \r\n.\r\n for example.
Regards,
Nish
Author of the romantic comedy
Summer Love and Some more Cricket [New Win]
Review by Shog9
Click here for review[NW]
|
|
|
|
|
thanks!
let me make my question clearer.
for example, i want to send several ip to client. so, i send command "iplist\n"
then, sending "3", "xxx.xxx.xxx.xxx\n", "yyy.yyy.yyy.yyy\n", "zzz.zzz.zzz.zzz\n".
so, are there any method to make sure i can receive 5 times from recv()?
my concern is that, if i can receive the command and data line by line. i can handle the data directly without saving the data to temp buffer.
any idea?
thanks,
jim
|
|
|
|
|
zecodela wrote:
so, are there any method to make sure i can receive 5 times from recv()?
Not really. You will have to parse what the recv() call gives you. Anyway you should always check the data returned and run some sanity checks. Never trust what the network sends.
If you really wanted to split up the recvs you could either use setsockopt(SO_RCVBUF) to set the size of the recieve buffer. Becareful here as it might screw up performance or else pass a small-sized buffer to recv. Frankly I don't see why you should want 5 recvs(): it's better to get it all in one big buffer.
HTH
Brian Azzopardi
bibamus, edamus, cras moriemur [eat, drink, for tomorrow we die]
|
|
|
|