|
What kind of "Telnet app" are you trying to make, and what program is at the other end receiving the codes you send? Are you sure that the other end understands ANSI escape codes?
|
|
|
|
|
Well, for now it's just a bunch of # 's filling the screen with a little smiley face (char 0x01 ) that moves randomly across the screen... And I'm using Windows XP Telnet on the other side (I've used Win98's and PuTTY also, none works...) What am I doing wrong? Thanks!
Windows Calculator told me I will die at 28.
|
|
|
|
|
If you really do SDLNet_TCP_Send(socket, (void*) 0x1B, 1); , then you send whatever byte of data is at address 0x1B, not the ESC character. Try SDLNet_TCP_Send(socket, (void*) "\x1b[B", 3);
|
|
|
|
|
Hi ,
I could initialize GDI+ in MFC , my previous system is Intel P4 CPU.
I try in visual C++ .NET 2003 & try in visual C++ .NET 2005 &
every thing is good and i use GDI+ function from my application.
but when i change my system (my system is AMD 4400+ X2 CPU) i write code
for initialize GDI+ in MFC, visual C++ .net does not have error when compile
my code but my project does not call GDI+ function , for example if i call DrawLine(...)
,nothing happen in my dialog window.
another things i can not understand when i excute my code in second system that i worte with my previous system , everythings are good & my project work properly.
I use these routine for initialize and use GDI+ in MFC:
http://www.codeproject.com/vcpp/gdiplus/vc6gdiplusmacro.asp[^]
Is that relate SDK platform ???
Is that relate to my CPU type?
Is there any one can help me????
Best Regards.
MJM.
|
|
|
|
|
another important thing that i saw,
when i debug this code in OnPaint() after initiliaze properly!!!
CPaintDC dc(this); // de
Gdiplus::Graphics graphic(dc.m_hDC);
Pen aPen(RGB(0,255,0));
graphic.DrawLine(&aPen,0,0,100,100);
//CDialog::OnPaint();
when i insert breakpoint at graphic.DrawLine(&aPen,0,0,100,100) when run into this
function debugger did not go to gdiplus library ! these mean can not work properly.
but when i compile my previous code , in breakpoint, ask me where gdiplusgraphics.h that
i think it is in SDK platform.
Best Regards.
MJM
|
|
|
|
|
My question doesn't really fit into any forum, but I hope to find the right audience here
I've got a MFC app that I want to split into components using COM. The menus and toolbars are created by querying XML from the components, so the components doesn't need to know which framework/toolkit is beeing used to display the UI.
But for UI elements like MDI child windows, dialogs and panes I don't know how to make them framework and language independent.
Say I want to display a modal dialog using Java, how could this been done if the app is written with MFC? (I know that this might look odd ) The MFC message loop doesn't know anything about the dialog.
I would like to be able to use MFC, .NET/WinForms, WPF and maybe Java to build the components. I would prefer a clean interface rather than any HWND hacks.
For example Office 2007 (maybe 2003) allows Add-Ins to create task panes with custom controls on it. AFAIK the task pane hosts an ActiveX control.
I guess the base app needs to offer interfaces for panes and child windows and maybe for dialogs, because otherwise it would be impossible to dock the panes to the main frame.
Maybe it would be better to drop the idea of beeing able to use Java (atleast for the UI) and write all components with the MFC and use the interop features with WinForms and WPF? But the disadvantage then would be that all component developers would need to be familiar with MFC.
There is a great article here on CP about interop/mixing MFC/WinForms/WPF (http://www.codeproject.com/managedcpp/HostMFC.asp[^]), but I'm not looking for a single mixed app.
The MFC base app should be replaceable with a WinForms or WPF app without having to modify/recompile the components.
Does anyone here use different frameworks and languages to build components for his app?
Thanks André
|
|
|
|
|
This will sound mean, but why are you wasting your time making this so complicated.
Forget Java NOW. It's a waste of time.
Sounds like your requirements point to a full blown .NET application. Just use pure .NET and don't look back.
Anyone who thinks he has a better idea of what's good for people than people do is a swine.
- P.J. O'Rourke
|
|
|
|
|
hi
how i can create a usercontrol like visual basic (contain more one control)
like a date time piker
Louai Haimour
|
|
|
|
|
What compiler are you using ? You can derive a class from a control class and put whatever child controls you want on there.
Christian Graus - Microsoft MVP - C++
Metal Musings - Rex and my new metal blog
|
|
|
|
|
dear Christian
thank you for your help
i use microsoft visual c++ 6 and i am a newer in this
if you can explane to me step by step >> thanks for you time
|
|
|
|
|
To be honest, really your best bet is to look amongst the articles on this site. They come with full source code and an explanation, and will be more in depth than any explanation I would come up with for your benefit within a forum post.
Christian Graus - Microsoft MVP - C++
Metal Musings - Rex and my new metal blog
|
|
|
|
|
Hi,
I am using this code
char * buffer = "";
_getcwd(buffer, _MAX_PATH);
to get my applications directory. However it give a 'the memory could not be "written"' error. Is there a better way to get the applications directory.
|
|
|
|
|
char buffer[_MAX_PATH];
_getcwd(buffer, _MAX_PATH);
|
|
|
|
|
Do realize that if the user set the working directory with a shortcut, this will return that path and not the path of the executing process. For the latter, use the following:
TCHAR filename[MAX_PATH];<br />
::GetModuleFileName(hModule, filename, MAX_PATH);
Anyone who thinks he has a better idea of what's good for people than people do is a swine.
- P.J. O'Rourke
|
|
|
|
|
Vis C/C++ 6.0 Vis Studio
I am receiving web pages using recv().
I am looping and receiving chunks of the page
and am concatinating them to a buffer.
I get the whole file but the loop hangs because
I have no detection of the end of file.
If I manually close the socket, I always have the
full file.
I have tried the recv() MSG_PEEK flag inside of the loop
to detect the end of the file, but I don't seem to be
able to get it to work. It hangs as well.
I've seen some code on CodeProject that looks for
2 consequtive CRLFs but that really only works if you
are only expecting a Header.
Any help would be much appreciated.
Thanks,
Robert
|
|
|
|
|
I have no experience at all, but did you try using http / 1.0 or add the "Connection: close" header?
|
|
|
|
|
Hi zzattack,
Thanks for reply.
I am using the recv() function and it
is a blocking call. Since I do not
know the size of the file that is coming,
I keep calling recv() to get the full file.
What happens is that when I call it the
final time, the call blocks - and I am hung there.
Robert
|
|
|
|
|
Hi zzatack,
Got it working!
I added Connection: close
as you recommended.
I guess that the recv() function was continuing to
wait for more packets since the connection was still open.
I'm not sure how you can say,
"I have no experience at all..."
when in fact you put your finger right
on the problem!!
Thanks again
Robert
|
|
|
|
|
Haha, cool, good to hear. I'll try to explain how I think it works.
Actually your recv() function returns when it has read what you wanted (like 4096 or 8192 bytes etc.), or if the connection closes. But, if there's not enough data left to fill the buffer (eof), recv() keeps waiting, and the connection remains opened so that more data can be sent and added to the buffer later.
By default on HTTP/1.0 the connection is closed, but with HTTP/1.1 it remains opened unless "Connection: close" was sent along with the headers. Therefor, recv() returns only when the server closes the connection because of a timeout. That might take minutes, and your code inded appears to hang
I meant I have no c/c++ experience, only a bit of the HTTP protocol which I learned fom mIRC scripting. I was actually looking at the boards for tutorials . Anyway, have fun.
|
|
|
|
|
Receive returns the number of bytes now in buffer(Received). If it is 0(zero) Then received all.You can turn back.
|
|
|
|
|
Hi Ajesh,
Thank-you for reply.
Unfortunately what is happening is that the
recv() call is blocking - it is hung, so I don't
get any "number of bytes" to even look at!
If I manually close the socket, then I have
the full file, but a 'manual close' approach
would be very undesirable to implement.
Any other suggestions?
Many thanks,
Robert
|
|
|
|
|
I am new to Visual C++.
1. Dialog application
2. Input screen built and working
3. Class Orders built. Base class generic CWnd. Contains data about orders and functions that validate them.
4. Can't use class Orders because I can't figure out where to construct it. In a console application, I would construct it in main(). Where can I execute a constructor for class Orders in a dialog or SDI app under VC++?
5. If I can construct an object of class Orders, I can then move on to exploring the use of the class. Until then I am stuck.
6. I suspect I am missing something very basic here. Any help is appreciated.
|
|
|
|
|
That greatly depends on when you want to use the Orders class. If you want to use it right away, instantiate the class in the OnInitDialog function
|
|
|
|
|
I created an absolutely barebones dialog project called Store to figure this out.
VC++ created two classes: CStoreApp and CStoreDlg.
I created an additional class Orders based on generic CWnd. I added no code. It compiled and executed OK.
My understanding is that I should use the OnInitDialog function of class CStoreDlg to create an instance of class Orders. Is that correct?
ATTEMPT #1:
ACTION:Added the following to OnInitDialog: Orders buy;
RESULT: Errors- 1)Orders undeclared identifier, 2) missing ";" before identifier 'buy', 3)'buy'undeclared identifier
ATTEMPT #2:
Added the following to OnInitDialog: Orders::orders buy;
RESULT: Errors- 1) Orders is not aclass or namespace, 2) Orders undeclared identifier, 3) Missing ';' before identifier 'buy' 4) 'buy' undeclared identifier.
I am obviously missing something critical.
|
|
|
|
|
You problably need to add #include "name of the orders class .h file" into your CStoreDlg .h file
|
|
|
|