|
DavidCrow wrote: Of course it is, just like any UI component. But more specifically, what class is the view derived from?
it is like this ...
class CChildView : public CWnd
|
|
|
|
|
Normally, a view is derived from CView . With your requirement of wanting a button on it, why not use CFormView instead?
"Normal is getting dressed in clothes that you buy for work and driving through traffic in a car that you are still paying for, in order to get to the job you need to pay for the clothes and the car and the house you leave vacant all day so you can afford to live in it." - Ellen Goodman
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
is my code
<br />
void CChildView::OnPaint()<br />
{<br />
CPaintDC dc(this);
<br />
<br />
CButton mybutton;<br />
RECT r;<br />
r.left=100;<br />
r.top=100;<br />
r.right=500;<br />
r.bottom=500;<br />
mybutton.Create("Button",BS_CHECKBOX ,r,this,100);<br />
mybutton.Invalidate();<br />
mybutton.UpdateWindow();<br />
mybutton.ShowWindow(SW_SHOW);<br />
}<br />
correct enough to display a button ???
|
|
|
|
|
Hello everyone,
CRT is implemented a way that if developer provides DllMain, it will use the provided one, or else the default DllMain is used.
I am wondering how to implement similar selective linking approach? i.e. if there are more than one implementations of a method of the same signature, I can control which one has the higher priority to link, and if the highest priority one does not exist, the second priority one will be used (and compiler will have no duplicated method warning/error).
I do not think CRT implements the approach by using MACRO (if developer provides DllMain, developer needs to define some MACRO, but actually we do not define any macro when writing DllMain) to control the selective linking to DllMain.
Any ideas?
thanks in advance,
George
|
|
|
|
|
Hello everyone,
About the release method implementation of smart pointer of COM, there are two approaches below, and approach 1 is preferred is recommended by Inside COM -- should be better.
Anyone know why approach 1 is better than approach 2?
(m_pI is interface pointer to a COM interface of type T, and it is a member variable of the COM smart pointer class)
Approach 1:
void Release()
{
if (m_pI != NULL)
{
T* pOld = m_pI;
m_pI = NULL;
pOld->Release();
}
}
Approach 2:
void Release()
{
if (m_pI != NULL)
{
m_pI -> Release();
m_pI = NULL;
}
}
thanks in advance,
George
|
|
|
|
|
pointers is to be smarter than them. Otherwise they will leak on you.
|
|
|
|
|
Thanks Chris,
Any comments to my original question?
regards,
George
|
|
|
|
|
what is the difference between array to pointers and pointer to array.Is there any difference.
Thanks in advance
|
|
|
|
|
They're completely different types!
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
philiptabraham wrote: array to pointers
There's nothing like that. May be you're talking about an array of pointers? If yes, the question then boils down to what a pointer is and what an array is.
Classic recommendation, buy a book.
Nobody can give you wiser advice than yourself. - Cicero
.·´¯`·->Rajesh<-·´¯`·.
Codeproject.com: Visual C++ MVP
|
|
|
|
|
|
hello everyone,
i need to call my coding in c++ to matlab..it's about filter..i got read some materials about calling c++ to matlab but im not that understood..i dont know where to start and dont have clear view..i need some guidance..thank you
|
|
|
|
|
Maybe if you ask another 4 or 5 times, you'll get the answer your looking for.
|
|
|
|
|
Matlab has no documentation or a a place where users can ask questions?
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
I wrote two apps and I want to pass a string from one app to the other via SendMessage function.
The message handler will return LRESULT which is of LONG_PTR type. How do I return string types such as char *, wchar_t *, LPCTSTR, LPCSTR, LPCWSTR, and the likes by converting them to LRESULT/LONG_PTR?
|
|
|
|
|
Your two applications have separate address spaces so raw pointers can’t be passed between them, regardless of what casting tricks you try.
Steve
|
|
|
|
|
I see, and so, are there any ways to marshal data from one app to another?
|
|
|
|
|
There are many ways. Some that spring to mind:
- Use COM to do the work for you. This is not trivial because one application still needs to get a marshalled interface from the other.
- Use pipes. Again, you still need some mechanism to the a pipe handle to the other application.
- Use shared memory, perhaps in a DLL loaded into both .EXE’s.
- Use the WM_COPYDATA message. This is probably the easiest.
This list is by no means a complete one.
Steve
|
|
|
|
|
Thanks a lot, I'll start with WM_COPYDATA, I think it fits my purpose.
|
|
|
|
|
|
Hi all,
I'm trying to figure out a simple way to transmit short messages from one machine to another, with neither machine being on the same network--i.e.: the server is running at a certain IP address and listening on a certain port, and a client sends the information to that IP/port pair.
Every piece of sample code I've found fails to work like this. It's been tried with the server program running here and the client running on a computer across town, and doesn't work. Am I missing something? Where can I find out how to do this?
Thanks for your time,
Michael
|
|
|
|
|
gee, its a bit hard to answer a question like this without knowing some in-between ..
'Usually', your server would have
an internal TCP/IP Address on your internal network
and/or an address that is NAT'd (Network Address Translated) to a public TCP/IP address that is visible to the internet - there are various ways to do this depending on wether you have multiple dmz's, firewalls, external switches/routers etc
Depending on your company internals then, your client may be able to access the internet and the public address of your server directly, or it may need to go through a proxy server that acts as an interface betwen your internal network and the internet ...
thats a pretty basic description ..without knowing more of your setup etc its a bit hard to give you an answer
'g'
|
|
|
|
|
Thanks for the reply. Sorry for being so vague, but I didn't want the problem to seem so huge and specific that it's impossible to help with
It's not within a company that this program will be used, if that helps. Basically it's just some networking framework to lay down for a game I'd like to toy around with.
Whatever network stuff I write needs to be written in Win32, and compatible with WinXP. The code snippets I've found can compile and run properly.
The thing about the 2 addresses--one on the internal network and a second, "global" address--yes I've seen that. My internal address is something like 192.168.0.1, and I can find my external address at this place. I asked a couple friends to use the same service to find their external address and they couldn't receive any information from my program when theirs was listening.
My setup is a simple modem/router in the house. Any target machines I talk to have either that same setup, or a DSL line hooked directly to it.
If you need anymore info, please let me know. This is an itch that I need to scratch--I've needed to beef up my networking knowledge and I've put it off too long
Take care,
Michael
|
|
|
|
|
matrix2681 wrote: Whatever network stuff I write needs to be written in Win32, and compatible with WinXP. The code snippets I've found can compile and run properly.
thats 'easy enough'
well, I guess, the first thing to do is some basic testing, yes ?
so you have a client and a server app - they should be able to run on your own home network - so, you could use two machines plugged into a switch/hub, with different 192.168.0.x addresses on each of them - but here's a thought - get a copy of VMWare Desktop, set up two VM's, then run your client/server on them ... really, there's nothing to stop you testing both components on one machine anyway, using 127.0.0.1 (which most NIC cards assign as a local/loop address)
Then, you seem to have a dial up account (the modem is a giveaway) - I'd talk to your ISP about the address they give you it could be that you need a 'static'/fixed ip address on the 'outside' ie public space .. this will help you when you have to go through firewalls etc because if its 'dynamic' it will change all the time which is a real pain
It really sounds like apart from testing the basic server/client, you need more help than I can give you - I dont set networks up for a living - we have a team that specialises in that, and becuase I work for a huge company, its quite involved - multiple firewalls, 'dmz' seperating internal network from public space etc
'g'
|
|
|
|
|
Garth J Lancaster wrote: so you have a client and a server app - they should be able to run on your own home network - so, you could use two machines plugged into a switch/hub, with different 192.168.0.x addresses on each of them - but here's a thought - get a copy of VMWare Desktop, set up two VM's, then run your client/server on them ... really, there's nothing to stop you testing both components on one machine anyway, using 127.0.0.1 (which most NIC cards assign as a local/loop address)
That makes sense. This is something I've already tried, and it works flawlessly (with the testing between two in-network machines I mean). I can even test both apps on the same computer with good results.
Garth J Lancaster wrote: Then, you seem to have a dial up account (the modem is a giveaway) - I'd talk to your ISP about the address they give you it could be that you need a 'static'/fixed ip address on the 'outside' ie public space .. this will help you when you have to go through firewalls etc because if its 'dynamic' it will change all the time which is a real pain
Actually it's a DSL setup, but what you said still holds true--dynamic IP would be a problem if I'm expecting it to stay static. A question though, totally out of left field: If I had a server app running on a static IP and any client running on a dynamic IP, is it possible to send the current IP assigned to the client out to the server?
Garth J Lancaster wrote: It really sounds like apart from testing the basic server/client, you need more help than I can give you - I dont set networks up for a living - we have a team that specialises in that, and becuase I work for a huge company, its quite involved - multiple firewalls, 'dmz' seperating internal network from public space etc
Aw man... Well you have helped me quite a bit so far, with just talking about how basic networking works. Sometimes just being told a few things many many times helps me figure out what I'm doing wrong
If you still have more suggestions though, I'm open. Thank you so much for your time.
Michael
|
|
|
|
|