diff --git a/reactos/dll/win32/netshell/lanconnectui.c b/reactos/dll/win32/netshell/lanconnectui.c
index 674cd4da2d1..4c9b41ed149 100644
--- a/reactos/dll/win32/netshell/lanconnectui.c
+++ b/reactos/dll/win32/netshell/lanconnectui.c
@@ -284,7 +284,6 @@ ShowNetworkComponentProperties(
pItem = (PNET_ITEM)lvItem.lParam;
pNCfgComp = (INetCfgComponent*) pItem->pNCfgComp;
-
hr = INetCfgComponent_RaisePropertyUi(pNCfgComp, GetParent(hwndDlg), NCRP_QUERY_PROPERTY_UI, (IUnknown*)This);
if (SUCCEEDED(hr))
{
diff --git a/reactos/dll/win32/netshell/lang/bg-BG.rc b/reactos/dll/win32/netshell/lang/bg-BG.rc
index 6e550fcb703..45beb541a8a 100644
--- a/reactos/dll/win32/netshell/lang/bg-BG.rc
+++ b/reactos/dll/win32/netshell/lang/bg-BG.rc
@@ -101,4 +101,6 @@ BEGIN
IDS_FORMAT_GBIT "%u ÃÁ/ñ"
IDS_DURATION_DAY "%d äåí %s"
IDS_DURATION_DAYS "%d äíè %s"
+ IDS_ASSIGNED_DHCP "Çàäàäåíî îò DHCP"
+ IDS_ASSIGNED_MANUAL "Ðú÷íî íàñòðîåíî"
END
diff --git a/reactos/dll/win32/netshell/lang/cs-CZ.rc b/reactos/dll/win32/netshell/lang/cs-CZ.rc
index 26fec213e23..b3ecf07a017 100644
--- a/reactos/dll/win32/netshell/lang/cs-CZ.rc
+++ b/reactos/dll/win32/netshell/lang/cs-CZ.rc
@@ -98,5 +98,7 @@ BEGIN
IDS_FORMAT_GBIT "%u GBit/s"
IDS_DURATION_DAY "%d Day %s"
IDS_DURATION_DAYS "%d Days %s"
+ IDS_ASSIGNED_DHCP "Pøiøazeno DHCP"
+ IDS_ASSIGNED_MANUAL "Ruènì nastaveno"
END
diff --git a/reactos/dll/win32/netshell/lang/da-DK.rc b/reactos/dll/win32/netshell/lang/da-DK.rc
index 306f2047333..657918b9396 100644
--- a/reactos/dll/win32/netshell/lang/da-DK.rc
+++ b/reactos/dll/win32/netshell/lang/da-DK.rc
@@ -98,6 +98,8 @@ BEGIN
IDS_FORMAT_GBIT "%u GBit/s"
IDS_DURATION_DAY "%d Day %s"
IDS_DURATION_DAYS "%d Days %s"
+ IDS_ASSIGNED_DHCP "Assigned by DHCP"
+ IDS_ASSIGNED_MANUAL "Manually configured"
END
diff --git a/reactos/dll/win32/netshell/lang/de-DE.rc b/reactos/dll/win32/netshell/lang/de-DE.rc
index a3be4309274..bc466e3cc20 100644
--- a/reactos/dll/win32/netshell/lang/de-DE.rc
+++ b/reactos/dll/win32/netshell/lang/de-DE.rc
@@ -101,4 +101,6 @@ BEGIN
IDS_FORMAT_GBIT "%u GBit/s"
IDS_DURATION_DAY "%d Tag %s"
IDS_DURATION_DAYS "%d Tage %s"
+ IDS_ASSIGNED_DHCP "Von DHCP zugewiesen"
+ IDS_ASSIGNED_MANUAL "Manuell konfiguriert"
END
diff --git a/reactos/dll/win32/netshell/lang/el-GR.rc b/reactos/dll/win32/netshell/lang/el-GR.rc
index 8682901cde4..8dd4faffbf7 100644
--- a/reactos/dll/win32/netshell/lang/el-GR.rc
+++ b/reactos/dll/win32/netshell/lang/el-GR.rc
@@ -98,5 +98,7 @@ BEGIN
IDS_FORMAT_GBIT "%u GBit/s"
IDS_DURATION_DAY "%d Day %s"
IDS_DURATION_DAYS "%d Days %s"
+ IDS_ASSIGNED_DHCP "Ïñßóôçêå áðü ôï DHCP"
+ IDS_ASSIGNED_MANUAL "Ïñßóôçêå ÷åéñïêßíçôá"
END
diff --git a/reactos/dll/win32/netshell/lang/en-US.rc b/reactos/dll/win32/netshell/lang/en-US.rc
index ad7460cfd20..73b3b2f9c83 100644
--- a/reactos/dll/win32/netshell/lang/en-US.rc
+++ b/reactos/dll/win32/netshell/lang/en-US.rc
@@ -100,5 +100,7 @@ BEGIN
IDS_FORMAT_GBIT "%u GBit/s"
IDS_DURATION_DAY "%d Day %s"
IDS_DURATION_DAYS "%d Days %s"
+ IDS_ASSIGNED_DHCP "Assigned by DHCP"
+ IDS_ASSIGNED_MANUAL "Manually configured"
END
diff --git a/reactos/dll/win32/netshell/lang/es-ES.rc b/reactos/dll/win32/netshell/lang/es-ES.rc
index cf6c92d0ee3..ace64aaadb6 100644
--- a/reactos/dll/win32/netshell/lang/es-ES.rc
+++ b/reactos/dll/win32/netshell/lang/es-ES.rc
@@ -94,5 +94,7 @@ BEGIN
IDS_FORMAT_GBIT "%u GBit/s"
IDS_DURATION_DAY "%d Día %s"
IDS_DURATION_DAYS "%d Días %s"
+ IDS_ASSIGNED_DHCP "Asignado por DHCP"
+ IDS_ASSIGNED_MANUAL "Configurado manualmente"
END
diff --git a/reactos/dll/win32/netshell/lang/fr-FR.rc b/reactos/dll/win32/netshell/lang/fr-FR.rc
index 051d136c54d..663ae61ac99 100644
--- a/reactos/dll/win32/netshell/lang/fr-FR.rc
+++ b/reactos/dll/win32/netshell/lang/fr-FR.rc
@@ -98,4 +98,6 @@ BEGIN
IDS_FORMAT_GBIT "%u GBit/s"
IDS_DURATION_DAY "%d Day %s"
IDS_DURATION_DAYS "%d Days %s"
+ IDS_ASSIGNED_DHCP "Assignée par DHCP"
+ IDS_ASSIGNED_MANUAL "Configurée manuellement"
END
diff --git a/reactos/dll/win32/netshell/lang/hu-HU.rc b/reactos/dll/win32/netshell/lang/hu-HU.rc
index 38ce845fa8d..8b228365f77 100644
--- a/reactos/dll/win32/netshell/lang/hu-HU.rc
+++ b/reactos/dll/win32/netshell/lang/hu-HU.rc
@@ -99,4 +99,6 @@ BEGIN
IDS_FORMAT_GBIT "%u GBit/s"
IDS_DURATION_DAY "%d Day %s"
IDS_DURATION_DAYS "%d Days %s"
+ IDS_ASSIGNED_DHCP "Assigned by DHCP"
+ IDS_ASSIGNED_MANUAL "Manually configured"
END
diff --git a/reactos/dll/win32/netshell/lang/id-ID.rc b/reactos/dll/win32/netshell/lang/id-ID.rc
index 6633bc72652..973dbe7137c 100644
--- a/reactos/dll/win32/netshell/lang/id-ID.rc
+++ b/reactos/dll/win32/netshell/lang/id-ID.rc
@@ -98,4 +98,6 @@ BEGIN
IDS_FORMAT_GBIT "%u GBit/s"
IDS_DURATION_DAY "%d Day %s"
IDS_DURATION_DAYS "%d Days %s"
+ IDS_ASSIGNED_DHCP "Assigned by DHCP"
+ IDS_ASSIGNED_MANUAL "Manually configured"
END
diff --git a/reactos/dll/win32/netshell/lang/it-IT.rc b/reactos/dll/win32/netshell/lang/it-IT.rc
index 8d1f1ea4a08..131d1be17db 100644
--- a/reactos/dll/win32/netshell/lang/it-IT.rc
+++ b/reactos/dll/win32/netshell/lang/it-IT.rc
@@ -104,5 +104,7 @@ BEGIN
IDS_FORMAT_GBIT "%u GBit/s"
IDS_DURATION_DAY "%d Day %s"
IDS_DURATION_DAYS "%d Days %s"
+ IDS_ASSIGNED_DHCP "Assegnato da DHCP"
+ IDS_ASSIGNED_MANUAL "Configurato manualmente"
END
diff --git a/reactos/dll/win32/netshell/lang/ja-JP.rc b/reactos/dll/win32/netshell/lang/ja-JP.rc
index 1373dd82066..fb2a60ff2d9 100644
--- a/reactos/dll/win32/netshell/lang/ja-JP.rc
+++ b/reactos/dll/win32/netshell/lang/ja-JP.rc
@@ -98,4 +98,6 @@ BEGIN
IDS_FORMAT_GBIT "%u GBit/s"
IDS_DURATION_DAY "%d Day %s"
IDS_DURATION_DAYS "%d Days %s"
+ IDS_ASSIGNED_DHCP "Assigned by DHCP"
+ IDS_ASSIGNED_MANUAL "Manually configured"
END
diff --git a/reactos/dll/win32/netshell/lang/nl-NL.rc b/reactos/dll/win32/netshell/lang/nl-NL.rc
index c9dadd6c047..c4880bd0af6 100644
--- a/reactos/dll/win32/netshell/lang/nl-NL.rc
+++ b/reactos/dll/win32/netshell/lang/nl-NL.rc
@@ -98,6 +98,8 @@ BEGIN
IDS_FORMAT_GBIT "%u GBit/s"
IDS_DURATION_DAY "%d Day %s"
IDS_DURATION_DAYS "%d Days %s"
+ IDS_ASSIGNED_DHCP "Assigned by DHCP"
+ IDS_ASSIGNED_MANUAL "Manually configured"
END
diff --git a/reactos/dll/win32/netshell/lang/no-NO.rc b/reactos/dll/win32/netshell/lang/no-NO.rc
index 5133247bcea..a759863d6d1 100644
--- a/reactos/dll/win32/netshell/lang/no-NO.rc
+++ b/reactos/dll/win32/netshell/lang/no-NO.rc
@@ -103,5 +103,7 @@ BEGIN
IDS_FORMAT_GBIT "%u GBit/s"
IDS_DURATION_DAY "%d dag %s"
IDS_DURATION_DAYS "%d dager %s"
+ IDS_ASSIGNED_DHCP "Tilordnet av DHCP"
+ IDS_ASSIGNED_MANUAL "Manuelt konfigurert"
END
diff --git a/reactos/dll/win32/netshell/lang/pl-PL.rc b/reactos/dll/win32/netshell/lang/pl-PL.rc
index 4df92061d43..bd09608632b 100644
--- a/reactos/dll/win32/netshell/lang/pl-PL.rc
+++ b/reactos/dll/win32/netshell/lang/pl-PL.rc
@@ -99,5 +99,7 @@ BEGIN
IDS_FORMAT_GBIT "%u GBit/s"
IDS_DURATION_DAY "%d Day %s"
IDS_DURATION_DAYS "%d Days %s"
+ IDS_ASSIGNED_DHCP "Przydzielony przez DHCP"
+ IDS_ASSIGNED_MANUAL "Ustawiony rêcznie"
END
diff --git a/reactos/dll/win32/netshell/lang/ru-RU.rc b/reactos/dll/win32/netshell/lang/ru-RU.rc
index c5ace57f7cf..d9441d39f0e 100644
--- a/reactos/dll/win32/netshell/lang/ru-RU.rc
+++ b/reactos/dll/win32/netshell/lang/ru-RU.rc
@@ -99,4 +99,6 @@ BEGIN
IDS_FORMAT_GBIT "%u ÃÁàéò/s"
IDS_DURATION_DAY "%d Äåíü %s"
IDS_DURATION_DAYS "%d Äíåé %s"
+ IDS_ASSIGNED_DHCP "Ïðèñâîåí DHCP"
+ IDS_ASSIGNED_MANUAL "Íàñòðîåí âðó÷íóþ"
END
diff --git a/reactos/dll/win32/netshell/lang/sk-SK.rc b/reactos/dll/win32/netshell/lang/sk-SK.rc
index 388a0930dc4..dfd73347535 100644
--- a/reactos/dll/win32/netshell/lang/sk-SK.rc
+++ b/reactos/dll/win32/netshell/lang/sk-SK.rc
@@ -105,4 +105,6 @@ BEGIN
IDS_FORMAT_GBIT "%u GBitov/s"
IDS_DURATION_DAY "%d deò %s"
IDS_DURATION_DAYS "%d dní %s"
+ IDS_ASSIGNED_DHCP "Pridelená DHCP serverom"
+ IDS_ASSIGNED_MANUAL "Nakonfigurovaná manuálne"
END
diff --git a/reactos/dll/win32/netshell/lang/sv-SE.rc b/reactos/dll/win32/netshell/lang/sv-SE.rc
index 1b7fc205c60..bff057fac09 100644
--- a/reactos/dll/win32/netshell/lang/sv-SE.rc
+++ b/reactos/dll/win32/netshell/lang/sv-SE.rc
@@ -99,4 +99,6 @@ BEGIN
IDS_FORMAT_GBIT "%u GBit/s"
IDS_DURATION_DAY "%d Day %s"
IDS_DURATION_DAYS "%d Days %s"
+ IDS_ASSIGNED_DHCP "Assigned by DHCP"
+ IDS_ASSIGNED_MANUAL "Manually configured"
END
diff --git a/reactos/dll/win32/netshell/lang/uk-UA.rc b/reactos/dll/win32/netshell/lang/uk-UA.rc
index d17dad4b921..faf3414c416 100644
--- a/reactos/dll/win32/netshell/lang/uk-UA.rc
+++ b/reactos/dll/win32/netshell/lang/uk-UA.rc
@@ -101,4 +101,6 @@ BEGIN
IDS_FORMAT_GBIT "%u GBit/s"
IDS_DURATION_DAY "%d Day %s"
IDS_DURATION_DAYS "%d Days %s"
+ IDS_ASSIGNED_DHCP "Íàäàíî DHCP"
+ IDS_ASSIGNED_MANUAL "Íàëàøòîâàíî âðó÷íó"
END
diff --git a/reactos/dll/win32/netshell/lang/zh-CN.rc b/reactos/dll/win32/netshell/lang/zh-CN.rc
index 0e07625af57..284994f7cea 100644
--- a/reactos/dll/win32/netshell/lang/zh-CN.rc
+++ b/reactos/dll/win32/netshell/lang/zh-CN.rc
@@ -98,4 +98,6 @@ BEGIN
IDS_FORMAT_GBIT "%u GBit/s"
IDS_DURATION_DAY "%d Day %s"
IDS_DURATION_DAYS "%d Days %s"
+ IDS_ASSIGNED_DHCP "Assigned by DHCP"
+ IDS_ASSIGNED_MANUAL "Manually configured"
END
diff --git a/reactos/dll/win32/netshell/lanstatusui.c b/reactos/dll/win32/netshell/lanstatusui.c
index 851c14c6e67..24bb0289225 100644
--- a/reactos/dll/win32/netshell/lanstatusui.c
+++ b/reactos/dll/win32/netshell/lanstatusui.c
@@ -30,8 +30,12 @@ typedef struct
HWND hwndDlg; /* status dialog window */
DWORD dwAdapterIndex;
UINT_PTR nIDEvent;
+ UINT DHCPEnabled;
DWORD dwInOctets;
DWORD dwOutOctets;
+ DWORD IpAddress;
+ DWORD SubnetMask;
+ DWORD Gateway;
UINT uID;
UINT Status;
}LANSTATUSUI_CONTEXT;
@@ -260,10 +264,7 @@ VOID
InitializeLANStatusUiDlg(HWND hwndDlg, LANSTATUSUI_CONTEXT * pContext)
{
WCHAR szBuffer[MAX_PATH] = {0};
- NETCON_PROPERTIES * pProperties = NULL;
- DWORD dwSize, dwAdapterIndex, dwResult;
- LPOLESTR pStr;
- IP_ADAPTER_INFO * pAdapterInfo;
+ NETCON_PROPERTIES * pProperties;
if (INetConnection_GetProperties(pContext->pNet, &pProperties) != NOERROR)
return;
@@ -279,52 +280,13 @@ InitializeLANStatusUiDlg(HWND hwndDlg, LANSTATUSUI_CONTEXT * pContext)
SendDlgItemMessageW(hwndDlg, IDC_STATUS, WM_SETTEXT, 0, (LPARAM)szBuffer);
- if (FAILED(StringFromCLSID(&pProperties->guidId, &pStr)))
- {
- NcFreeNetconProperties(pProperties);
- return;
- }
- NcFreeNetconProperties(pProperties);
-
- /* get the IfTable */
- dwSize = 0;
- dwResult = GetAdaptersInfo(NULL, &dwSize);
- if (dwResult!= ERROR_BUFFER_OVERFLOW)
- {
- CoTaskMemFree(pStr);
- return;
- }
-
- pAdapterInfo = (PIP_ADAPTER_INFO)CoTaskMemAlloc(dwSize);
- if (!pAdapterInfo)
- {
- CoTaskMemFree(pAdapterInfo);
- CoTaskMemFree(pStr);
- return;
- }
-
- if (GetAdaptersInfo(pAdapterInfo, &dwSize) != NO_ERROR)
- {
- CoTaskMemFree(pAdapterInfo);
- CoTaskMemFree(pStr);
- return;
- }
-
- if (!GetAdapterIndexFromNetCfgInstanceId(pAdapterInfo, pStr, &dwAdapterIndex))
- {
- CoTaskMemFree(pAdapterInfo);
- CoTaskMemFree(pStr);
- return;
- }
- CoTaskMemFree(pStr);
- pContext->dwAdapterIndex = dwAdapterIndex;
pContext->dwInOctets = 0;
pContext->dwOutOctets = 0;
/* update adapter info */
pContext->Status = -1;
UpdateLanStatus(hwndDlg, pContext);
- CoTaskMemFree(pAdapterInfo);
+ NcFreeNetconProperties(pProperties);
}
INT_PTR
@@ -336,8 +298,11 @@ LANStatusUiAdvancedDlg(
LPARAM lParam
)
{
+ WCHAR szBuffer[100] = {0};
PROPSHEETPAGE *page;
LANSTATUSUI_CONTEXT * pContext;
+ DWORD dwIpAddr;
+
switch(uMsg)
{
@@ -345,6 +310,31 @@ LANStatusUiAdvancedDlg(
page = (PROPSHEETPAGE*)lParam;
pContext = (LANSTATUSUI_CONTEXT*)page->lParam;
SetWindowLongPtr(hwndDlg, DWLP_USER, (LONG_PTR)pContext);
+ if (pContext->DHCPEnabled)
+ LoadStringW(netshell_hInstance, IDS_ASSIGNED_DHCP, szBuffer, sizeof(szBuffer)/sizeof(WCHAR));
+ else
+ LoadStringW(netshell_hInstance, IDS_ASSIGNED_MANUAL, szBuffer, sizeof(szBuffer)/sizeof(WCHAR));
+
+ szBuffer[(sizeof(szBuffer)/sizeof(WCHAR))-1] = L'\0';
+ SendDlgItemMessageW(hwndDlg, IDC_DETAILSTYPE, WM_SETTEXT, 0, (LPARAM)szBuffer);
+
+
+ dwIpAddr = ntohl(pContext->IpAddress);
+ swprintf(szBuffer, L"%u.%u.%u.%u", FIRST_IPADDRESS(dwIpAddr), SECOND_IPADDRESS(dwIpAddr),
+ THIRD_IPADDRESS(dwIpAddr), FOURTH_IPADDRESS(dwIpAddr));
+ SendDlgItemMessageW(hwndDlg, IDC_DETAILSIP, WM_SETTEXT, 0, (LPARAM)szBuffer);
+
+ dwIpAddr = ntohl(pContext->SubnetMask);
+ swprintf(szBuffer, L"%u.%u.%u.%u", FIRST_IPADDRESS(dwIpAddr), SECOND_IPADDRESS(dwIpAddr),
+ THIRD_IPADDRESS(dwIpAddr), FOURTH_IPADDRESS(dwIpAddr));
+ SendDlgItemMessageW(hwndDlg, IDC_DETAILSSUBNET, WM_SETTEXT, 0, (LPARAM)szBuffer);
+
+ dwIpAddr = ntohl(pContext->Gateway);
+ swprintf(szBuffer, L"%u.%u.%u.%u", FIRST_IPADDRESS(dwIpAddr), SECOND_IPADDRESS(dwIpAddr),
+ THIRD_IPADDRESS(dwIpAddr), FOURTH_IPADDRESS(dwIpAddr));
+ SendDlgItemMessageW(hwndDlg, IDC_DETAILSGATEWAY, WM_SETTEXT, 0, (LPARAM)szBuffer);
+
+
return TRUE;
default:
break;
@@ -405,6 +395,65 @@ LANStatusUiDlg(
return FALSE;
}
+VOID
+InitializePropertyDialog(
+ LANSTATUSUI_CONTEXT * pContext,
+ NETCON_PROPERTIES * pProperties)
+{
+ DWORD dwSize, dwAdapterIndex, dwResult;
+ LPOLESTR pStr;
+ IP_ADAPTER_INFO * pAdapterInfo, *pCurAdapter;
+
+ if (FAILED(StringFromCLSID(&pProperties->guidId, &pStr)))
+ {
+ return;
+ }
+
+ /* get the IfTable */
+ dwSize = 0;
+ dwResult = GetAdaptersInfo(NULL, &dwSize);
+ if (dwResult!= ERROR_BUFFER_OVERFLOW)
+ {
+ CoTaskMemFree(pStr);
+ return;
+ }
+
+ pAdapterInfo = (PIP_ADAPTER_INFO)CoTaskMemAlloc(dwSize);
+ if (!pAdapterInfo)
+ {
+ CoTaskMemFree(pAdapterInfo);
+ CoTaskMemFree(pStr);
+ return;
+ }
+
+ if (GetAdaptersInfo(pAdapterInfo, &dwSize) != NO_ERROR)
+ {
+ CoTaskMemFree(pAdapterInfo);
+ CoTaskMemFree(pStr);
+ return;
+ }
+
+ if (!GetAdapterIndexFromNetCfgInstanceId(pAdapterInfo, pStr, &dwAdapterIndex))
+ {
+ CoTaskMemFree(pAdapterInfo);
+ CoTaskMemFree(pStr);
+ return;
+ }
+
+ pCurAdapter = pAdapterInfo;
+ while(pCurAdapter->Index != dwAdapterIndex)
+ pCurAdapter = pCurAdapter->Next;
+
+
+ pContext->IpAddress = inet_addr(pCurAdapter->IpAddressList.IpAddress.String);
+ pContext->SubnetMask = inet_addr(pCurAdapter->IpAddressList.IpMask.String);
+ pContext->Gateway = inet_addr(pCurAdapter->GatewayList.IpAddress.String);
+ pContext->DHCPEnabled = pCurAdapter->DhcpEnabled;
+ CoTaskMemFree(pStr);
+ CoTaskMemFree(pAdapterInfo);
+ pContext->dwAdapterIndex = dwAdapterIndex;
+}
+
VOID
ShowStatusPropertyDialog(
LANSTATUSUI_CONTEXT * pContext,
@@ -428,7 +477,7 @@ ShowStatusPropertyDialog(
pinfo.pszCaption = pProperties->pszwName;
pinfo.dwFlags |= PSH_PROPTITLE;
}
-
+ InitializePropertyDialog(pContext, pProperties);
if (pProperties->MediaType == NCM_LAN && pProperties->Status == NCS_CONNECTED)
{
hppages[0] = InitializePropertySheetPage(MAKEINTRESOURCEW(IDD_LAN_NETSTATUS), LANStatusUiDlg, (LPARAM)pContext, NULL);
@@ -449,6 +498,7 @@ ShowStatusPropertyDialog(
{
ShowNetConnectionProperties(pContext->pNet, pContext->hwndDlg);
}
+
NcFreeNetconProperties(pProperties);
}
}
diff --git a/reactos/dll/win32/netshell/netshell.rbuild b/reactos/dll/win32/netshell/netshell.rbuild
index 6e9f8e83f2c..474472e69ef 100644
--- a/reactos/dll/win32/netshell/netshell.rbuild
+++ b/reactos/dll/win32/netshell/netshell.rbuild
@@ -17,6 +17,7 @@
uuid
advapi32
setupapi
+ ws2_32
comctl32
precomp.h
netshell.c
diff --git a/reactos/dll/win32/netshell/precomp.h b/reactos/dll/win32/netshell/precomp.h
index 511c03bffac..66613ac8cca 100644
--- a/reactos/dll/win32/netshell/precomp.h
+++ b/reactos/dll/win32/netshell/precomp.h
@@ -14,7 +14,7 @@
#define COBJMACROS
#define NONAMELESSUNION
#define NONAMELESSSTRUCT
-
+#include
#include
#include
diff --git a/reactos/dll/win32/netshell/res/neterror.ico b/reactos/dll/win32/netshell/res/neterror.ico
index 47c68628558..c80f6b7c97d 100644
Binary files a/reactos/dll/win32/netshell/res/neterror.ico and b/reactos/dll/win32/netshell/res/neterror.ico differ
diff --git a/reactos/dll/win32/netshell/res/netidle.ico b/reactos/dll/win32/netshell/res/netidle.ico
index 1cc82bb664f..fbbdd17da96 100644
Binary files a/reactos/dll/win32/netshell/res/netidle.ico and b/reactos/dll/win32/netshell/res/netidle.ico differ
diff --git a/reactos/dll/win32/netshell/res/netoff.ico b/reactos/dll/win32/netshell/res/netoff.ico
index b38da3d0ea6..0d3bb295e2a 100644
Binary files a/reactos/dll/win32/netshell/res/netoff.ico and b/reactos/dll/win32/netshell/res/netoff.ico differ
diff --git a/reactos/dll/win32/netshell/res/netrec.ico b/reactos/dll/win32/netshell/res/netrec.ico
index fc214f36b7c..5aaffe27e6e 100644
Binary files a/reactos/dll/win32/netshell/res/netrec.ico and b/reactos/dll/win32/netshell/res/netrec.ico differ
diff --git a/reactos/dll/win32/netshell/res/nettrans.ico b/reactos/dll/win32/netshell/res/nettrans.ico
index 7c5431fae79..b3f647f20e9 100644
Binary files a/reactos/dll/win32/netshell/res/nettrans.ico and b/reactos/dll/win32/netshell/res/nettrans.ico differ
diff --git a/reactos/dll/win32/netshell/res/nettrrec.ico b/reactos/dll/win32/netshell/res/nettrrec.ico
index dbac3f9edd9..8c7420827c1 100644
Binary files a/reactos/dll/win32/netshell/res/nettrrec.ico and b/reactos/dll/win32/netshell/res/nettrrec.ico differ
diff --git a/reactos/dll/win32/netshell/resource.h b/reactos/dll/win32/netshell/resource.h
index a4d2b8e5869..03b8f27ee4a 100644
--- a/reactos/dll/win32/netshell/resource.h
+++ b/reactos/dll/win32/netshell/resource.h
@@ -78,4 +78,6 @@
#define IDS_FORMAT_GBIT 10203
#define IDS_DURATION_DAY 10204
#define IDS_DURATION_DAYS 10205
+#define IDS_ASSIGNED_DHCP 10206
+#define IDS_ASSIGNED_MANUAL 10207