1 /* 2 * PROJECT: ReactOS Network Control Panel 3 * FILE: dll/cpl/ncpa/ncpa.c 4 * PURPOSE: ReactOS Network Control Panel 5 * PROGRAMMER: Gero Kuehn (reactos.filter@gkware.com) 6 * UPDATE HISTORY: 7 * 07-18-2004 Created 8 */ 9 10 #define WIN32_NO_STATUS 11 #include <stdarg.h> 12 #include <windef.h> 13 #include <winbase.h> 14 #include <winuser.h> 15 #include <shellapi.h> 16 #include <cpl.h> 17 18 LONG CALLBACK 19 DisplayApplet(VOID) 20 { 21 WCHAR szParameters[] = L"/n,::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{7007ACC7-3202-11D1-AAD2-00805FC1270E}"; 22 23 /* NOTE: If Explorer shell is not available, use ReactOS's alternative file browser instead */ 24 return (INT_PTR) ShellExecuteW(NULL, L"open", 25 GetShellWindow() ? L"explorer.exe" : L"filebrowser.exe", 26 szParameters, NULL, SW_SHOWDEFAULT) > 32; 27 } 28 29 /* Control Panel Callback */ 30 LONG CALLBACK 31 CPlApplet(HWND hwndCPl, UINT uMsg, LPARAM lParam1, LPARAM lParam2) 32 { 33 UNREFERENCED_PARAMETER(hwndCPl); 34 switch (uMsg) 35 { 36 37 case CPL_INIT: 38 { 39 return TRUE; 40 } 41 42 case CPL_GETCOUNT: 43 { 44 return 1; 45 } 46 case CPL_DBLCLK: 47 { 48 DisplayApplet(); 49 break; 50 } 51 } 52 53 return FALSE; 54 } 55 56 57 BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD dwReason, LPVOID lpvReserved) 58 { 59 UNREFERENCED_PARAMETER(lpvReserved); 60 61 switch(dwReason) 62 { 63 case DLL_PROCESS_ATTACH: 64 case DLL_THREAD_ATTACH: 65 break; 66 } 67 68 return TRUE; 69 } 70