Advertisement
Guest User

Untitled

a guest
Jan 29th, 2015
201
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.32 KB | None | 0 0
  1. #include <iostream>
  2. #include <winsock2.h>
  3. #pragma comment(lib,"ws2_32.lib")
  4.  
  5. int main()
  6. {
  7. SetConsoleTitleA( "Klient - Piotr Bator" ); // nazwa belki gónej okna
  8.  
  9. std::cout<<"Zdalne zamykanie systemow operacyjnych\r\n";
  10. std::cout<<"Piotr Bator\r\n";
  11. std::cout<<"------------------------------------------\r\n";
  12. std::cout<<"KLIENT\r\n";
  13. std::cout<<"------------------------------------------\r\n";
  14.  
  15. // Initialise Winsock
  16. WSADATA WsaDat;
  17. if(WSAStartup(MAKEWORD(2,2),&WsaDat)!=0)
  18. {
  19. std::cout<<"Blad ladowania Winsocka!\r\n";
  20. WSACleanup();
  21. system("PAUSE");
  22. return 0;
  23. }
  24.  
  25. // Create our socket
  26. SOCKET Socket=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
  27. if(Socket==INVALID_SOCKET)
  28. {
  29. std::cout<<"Blad tworzenia gniazda!\r\n";
  30. WSACleanup();
  31. system("PAUSE");
  32. return 0;
  33. }
  34.  
  35.  
  36. char IP[64]; // zmienna do ip
  37. std::cout<<"Podaj IP:\r\n";
  38. std::cin>>IP; // wpisujemy ip
  39.  
  40.  
  41. // Setup our socket address structure
  42. SOCKADDR_IN SockAddr;
  43. SockAddr.sin_port=htons(8888);
  44. SockAddr.sin_family=AF_INET;
  45. SockAddr.sin_addr.s_addr= inet_addr(IP); // tu wprowadzamy to ip
  46.  
  47. // Attempt to connect to server
  48. if(connect(Socket,(SOCKADDR*)(&SockAddr),sizeof(SockAddr))!=0) // jezeli dane sa dobre i serwer istnieje to polaczamy sie
  49. {
  50. std::cout<<"Failed to establish connection with server\r\n";
  51. WSACleanup();
  52. system("PAUSE");
  53. return 0;
  54. }
  55.  
  56. // Display message from server
  57. char buffer[1000]; // deklarujemy zmienna w ktorej bedziemy przechowywac to co odebralismy
  58.  
  59. memset(buffer,0,999); // czysicimy ta zmienna
  60. recv(Socket,buffer,1000,0); // odbieramy wiadomosc od serwera
  61. std::cout<<buffer; // wyswietlamy ja
  62.  
  63. memset(buffer,0,999);
  64. recv(Socket,buffer,1000,0); // to samo
  65. std::cout<<buffer;
  66.  
  67. memset(buffer,0,999);
  68. recv(Socket,buffer,1000,0);
  69.  
  70. if(strcmp(buffer, "close") == 0) { // jezeli to co odebralismy to close to robi sie to co w ifie
  71. std::cout<<"Serwer wylacza system operacyjny\r\n\r\n";
  72. system("shutdown -f -s"); // wylacza system
  73. }else{ // a jak cos innego
  74. std::cout<<"Nic nie wykonano!\r\n\r\n"; // to tylko to wyswietla
  75. }
  76.  
  77. system("pause");
  78. std::cout<<"Rozlanczanie\r\n\r\n";
  79. // Shutdown our socket
  80. shutdown(Socket,SD_SEND);
  81.  
  82. // Close our socket entirely
  83. closesocket(Socket);
  84.  
  85. // Cleanup Winsock
  86. WSACleanup();
  87. system("PAUSE");
  88. return 0;
  89. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement