|
This is something I noticed about using ShellExecute() and CreateProcess(). When I have this:
cout << "Start..";
ShellExecuteEx(/* I call notepad or something here!! */);
cout << "End..";
It calls the ShellExecuteEx function first and THEN the FIRST cout statement and then the SECOND cout statement i.e
(displays the notepad.exe)
Start..
End..
How do I get it to call the first cout statement, then the ShellExecuteEx() and then the second cout statement??
Also how do I get the notepad.exe to exit when I am finished doing what I do with it, in the program??
Thanks,
grahamoj.
|
|
|
|
|
Interesting. Set a delay timer right after "Start.." and see if the console displays it. Maybe it displays it so quick that you miss it.
Kuphryn
|
|
|
|
|
Flush the output stream after each line, by adding endl :
cout << "start" << endl;
ShellExecute(...);
cout << "end" << endl;
--Mike--
THERE IS NO THERE IS NO BUT THERE IS
MAGIC PIXIE DUST BUSINESS GENIE CODE PROJECT
Homepage | RightClick-Encrypt | 1ClickPicGrabber
"You have Erica on the brain" - Jon Sagara to me
|
|
|
|
|
Thanks, that worked..
grahamoj.
|
|
|
|
|
I want to create a modeless dialog from Mainframe.
I use the following statement,I don't want to use Create
Method,I prefer to use CreateEx,because I want it to be positioned anywhere on the screen. but it fails
Please tell me the reason.
m_pDlg->CreateEx(WS_EX_CLIENTEDGE,_T("ModelessDialog"),NULL, WS_POPUP|WS_VISIBLE,rect,this,
IDD_MODELESS_DIALOG);
wuwenguo
|
|
|
|
|
|
Hi, again me
I need to learn how to make a simple dialog based window application in C++. I do not want to use MFC or any wizard. As I know I need to open I win32 empty project and add a source file. Then write WinMain function and do not create a window but call DialogBox function but how to get messages and how to destroy when close dialog. Ok
if you know any tutorial or any sample project please sent me.
karanba
|
|
|
|
|
This website helped me a lot when I started to learn Windows API.
http://www.winprog.org/tutorial/
I hope you find it as helpfull as I did.
// Afterall I realized that even my comment lines have bugs
|
|
|
|
|
Hi, Everbody.
I am trying to do a simple screensaver by using scrnsave.lib. I am coding in VC++ 7.0 but not managed C++ or C#.
I only want to show a text in the window. Do you have any sample project.
karanba
|
|
|
|
|
|
hey do anyone know about sms messaging from a vc+ winsock application .
|
|
|
|
|
no
|
|
|
|
|
You can find some shareware and commercial SMS libraries here.
/ravi
Let's put "civil" back in "civilization"
http://www.ravib.com
ravib@ravib.com
|
|
|
|
|
hi,
i am new to vc++,i am trying to add two dates but i could not get it.can anyone help me in solving this?i want to add two dates and store it in a variable (of any type), like datediff in vb do we have any such functions in vc++?
thanks in advance for all
|
|
|
|
|
See the CTimeSpan class. There are also a bunch of articles right here at CP!
/ravi
Let's put "civil" back in "civilization"
http://www.ravib.com
ravib@ravib.com
|
|
|
|
|
Hi,
I have programmed a MFC application under Win XP, and now i try to run my app on Win98.
I have copied the following files to the win98 system dir:
MFC42.dll, msvcp60.dll, msvcrt.dll
I get the following error:
The MSVCRT.DLL file is linked to missing export NTDLL.DLL RtlGetNtVersionNumbers
With Dependency Walker i see that the version of ntdll.dll not correct is for my app. When i copy a newer version of ntdll.dll to the system dir, windows doesnt start correctly.
Thanks for helping me!
Willem
|
|
|
|
|
I think I had a problem like yours with windows nt a couple of years ago and after several attempts I realized that there was no way around it (for me at least). My assumption was that ntdll.dll for windows 9x is not compatible with windows nt's. I hope someone has a solution for your question.
// Afterall I realized that even my comment lines have bugs
|
|
|
|
|
I'm doing a project where i have to keep reading a struct from the disk and i have to keep doing this until i come to a special set of bits. I don't know how many structs are on the disk so i need to be able to do something like this:
unsigned int num_structs = 0;
struct_name *the_struct;
do
{
num_structs++;
the_struct = realloc(sizeof(the_struct)*num_structs);
read_struct(&the_struct[num_structs-1]);
} while (nextbits() == 'whatever')
Where the function realloc will preserve the data already written in the memory area. Is this possible?
thanks!
|
|
|
|
|
No. But you can do this:
unsigned int size;
int* array;
for( int i = 0;i < 10;i++ )
{
int* temp = array;
size++;
array = new int[size];
memcpy( array, temp, sizeof(int) * (size-1) );
delete[] temp;
}
|
|
|
|
|
have a look on std::vector
http://www.msoe.edu/eecs/ce/courseinfo/stl/vector.htm
|
|
|
|
|
I want my server to be password protected. I use asynchronous I/O with WSAAsyncSelect() and wondering a few things.
In FD_ACCEPT: I should not do handshaking here because it would block other clients from connecting to the server if the handshaking client doesn't send data fast. Am I right here?
In FD_READ: If handshaking is made here, than every time FD_READ is sent I must check if the client is handshaking or not. Is this right place to check whether the client is handshaking or not?
Hope you understand me!
Rickard Andersson@Suza Computing
C# and C++ programmer from SWEDEN!
UIN: 50302279
E-Mail: nikado@pc.nu
Speciality: I love C#, ASP.NET and C++!
|
|
|
|
|
Hi Rickard, here a copy from our mail conversation:
I think this is rather a protocol question than a networking question. I would do something like a handshake between server and client... e.g. (each \n is a newline character):
client: ricksprotocol_01\n<br />
server: OK\n<br />
client: connect user rick pass supersecret\n<br />
server: OK\n
I do it like that: when a client connects it becomes accepted and a flag showing it state is set to CLIENT_HANDSHAKE. Now server and client send and receive text lines for handshake. After the client has identified the flag is set to CLIENT_RICKCHAT (or to CLIENT_TELNET if it's not a true chat client or whatever).
enum {
CLIENT_DEAD = 0,
CLIENT_HANDSHAKE,
CLIENT_TELNET,
CLIENT_RICKCHAT,
};
Hope it helps....... Moak
|
|
|
|
|
And to get to know if the client is HANDSHAKING or not I need to check that every FD_READ?
Yes, it must be like that! Don't know any better solution!
Rickard Andersson@Suza Computing
C# and C++ programmer from SWEDEN!
UIN: 50302279
E-Mail: nikado@pc.nu
Speciality: I love C#, ASP.NET and C++!
|
|
|
|
|
Rickard Andersson wrote:
And to get to know if the client is HANDSHAKING or not I need to check that every FD_READ?
yup. If it's not boring for you I can tell you what I do: FD_READ calls a OnReceive() method of my socket. There I collect bytes until I received a full text line (streaming nature of TCP requires this). Each full text line calls OnReceiveLine() method and all protocol stuff is handled. Only here I parse for commands and for example do client-server handshake. When the client has logged in properly a special flag is set.
At this point, when you work object orientated, you could swap socket object (assign socket handle to a new object)... and the new OnReceiveLine() method would not need to further check if handshake has to be done. It's pretty handy if you have different sockets with totaly different tasks. So you avoid gazillions of checks and state variables and complicate all-purpose-code.
However, I do a text based handshake in my code b/c it's more flexible for my needs. Of course you can work with binary codes if you don't like text parsing.
|
|
|
|
|
Moak wrote:
At this point, when you work object orientated
I wish my server could be 100 % C++ but it's not!
I use many globals and many functions. As for now... I only has 2 classes for handling two log books.
But this is just a test server.. pretty big to be a test server but what the heck!
Rickard Andersson@Suza Computing
C# and C++ programmer from SWEDEN!
UIN: 50302279
E-Mail: nikado@pc.nu
Speciality: I love C#, ASP.NET and C++!
|
|
|
|