xref: /reactos/dll/cpl/ncpa/ncpa.c (revision 1de09c47)
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