|
These are the function for drawing using GDI Font and Text Functions[^].
You can try to look up for memory DC and how to save it to a image.
-Saurabh
|
|
|
|
|
Thank you so much
Yes U Can ...If U Can ,Dream it , U can do it ...ICAN
|
|
|
|
|
I am using listview in recordview with checkbox when I check and unchecked checkbox
of particular row then that row not selected.It only selected when I click
on that row item. so what I want that row should also get selected when I check and
uncheck the checkbox of the row. How It is possible???
Trioum
|
|
|
|
|
Hi all,
How can I convert an UINT into wstring.
Initially I convert it into CStringW, using Format(). But wstring there is no such thing. I want to avoid MFC here.
Any idea?
Thanks
I appreciate your help all the time...
CodingLover
|
|
|
|
|
#include <sstream>
UINT i = 100;
std::wstringstream str;
str << i;
wstring s = str.str();
-Saurabh
|
|
|
|
|
Thanks,
How about this way?
<br />
wchar_t buf[8];<br />
wstring str(L"");<br />
_itow(12, buf, 10);<br />
str.append(buf);
Actually I want to do this for values from 0 to 31 only. So I think my buffer size is enough.
I appreciate your help all the time...
CodingLover
|
|
|
|
|
Sure you can do this way but I will recommend using wstringstream. It is more general, you don't have to worry about buffer size.
-Saurabh
|
|
|
|
|
I'm writing a software application which I intend to sell and I'm implementing a number of security features for licensing purpose.
I was wondering if there is a way to identify a Windows OS installation. Example is it possible to get Windows Serials?
|
|
|
|
|
|
your thought is not realism ,because maybe many people use the same SN of windows ,i think you can get some hardware information to deal with that ,such as net card physics address
a beginner
|
|
|
|
|
enhzflap was just replying to another user asking how to get window's serial number.
I agree with your criticism, but you should point it at the original poster (JackWack).
Iain.
|
|
|
|
|
Hi
I wanna know how to change all of controls of a MFC exe, like skin programs(SkinCrafter for example)
I have wrote some function to subclass all of a controls of a dialog, it enumarates all child windows and subclass all buttons for example, I created a class derived from CDialog, and call that function on it OnInitDialog() method, and I derive all my dialog's class from this one, so all of it's buttons will be replaced, this works great for me, but want to know how these skin programs can change all of controls of an exe file, a piece of code or a good guidline will help me much
Please answer if you know something about this
Thank you all
www.logicsims.ir
|
|
|
|
|
|
Hi,
I'm having problems converting some compiled code in VC++ 6.0 under my new Studio 2005 environment.
VC++6.0:
<br />
ON_MESSAGE( MY_MESSAGE, OnUmMyMessage)
the .H declaration for above...
<br />
afx_msg void OnUmMyMessage(EGS_CONSTATE conState, CMyMsg *msg);<br />
<br />
typedef enum { STATE1, STATE2, STATE3, } EGS_CONSTATE;<br />
<br />
class CMyMsg : public CMyOtherClass<br />
{<br />
public:<br />
char data[MAX_MSG_SIZE];<br />
};
The compiler error I get is:
error C2440: 'static_cast' : cannot convert from 'void (__thiscall CMyVisDlg::* )(EGS_CONSTATE,CMyMsg *)' to 'LRESULT (__thiscall CWnd::* )(WPARAM,LPARAM)'
How can I make my arguments or message map look like a (WPARAM,LPARAM) ?
Thanks!
|
|
|
|
|
What about a cast?
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.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
I tried casting inside the message map function as:
<br />
<br />
ON_MESSAGE( (WPARAM) MY_MESSAGE, (LPARAM) OnUmMyMessage)<br />
<br />
but that only gave me errors
|
|
|
|
|
You made the casts in the wrong places, change
afx_msg void OnUmMyMessage(EGS_CONSTATE conState, CMyMsg *msg);
to
afx_msg void OnUmMyMessage(WPARAM wConState, LPARAM lMsg);
and then, in the function definition
afx_msg void OnUmMyMessage(WPARAM wConState, LPARAM lMsg)
{
EGS_CONSTATE conState = (EGS_CONSTATE) wConState;
CMyMsg * msg = (CMyMsg *) lMsg;
}
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.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
Cool beans!
both of the suggestions listed here worked for me.
Thanks for the help,
Johnny
|
|
|
|
|
You are welcome.
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.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
more insight,
there may be compiler settings that are not allowing this. In other projects that i've worked with, there is no problem with what appears above (in 6.0 or Studio 2005).
|
|
|
|
|
The prototype changed between VC6 and VS2005
ON_MESSAGE( WM_MYMESSAGE, OnMyMessage )<br />
LRESULT CMyWnd::OnMyMessage( WPARAM wParam, LPARAM lParam ) <br />
|
|
|
|
|
In addition to the other comments, I happen to think this is a GOOD change. I've had to fly from India to Northern Ireland to fix a bug I made my using the wrong prototype for a message handler. The casts in the MFC macros hid my mistake during compilation, and it took me ages to track down the stack corruption.
I took the hint as was paranoid from then on - but anything a compiler can do to stop me making dumb mistakes and fine by me.
Iain.
|
|
|
|
|
COOL
Never Change My Goal!
|
|
|
|
|
Hmm, so how do I make that mistake? Haven't been to Ireland yet.
Anyone who thinks he has a better idea of what's good for people than people do is a swine.
- P.J. O'Rourke
|
|
|
|
|
I saw you've solved this, but just for the record:
The fact that message handlers for messages sent to windows returns an LRESULT is not new or changed in any way since VC6, this has always been the case. Have a look at MSDN[^].
The difference between VS2005 and VC6 is that in the later version you'll get a compiler error whereas the older version simply ignores it, which will put the developer in trouble later on.
Just like Iain I made this infamous error many years ago which corrupted my stack as well.
My point is that if you encounter other MFC applications with user defined message handlers mapped with ON_MESSAGE or ON_REGISTERED_MESSAGE that does not return an LRESULT , correct it immediately and save you a lot of future trouble.
"It's supposed to be hard, otherwise anybody could do it!" - selfquote "High speed never compensates for wrong direction!" - unknown
|
|
|
|