https://git.reactos.org/?p=reactos.git;a=commitdiff;h=9a39315d467b0641169f8d5dbd5d9eeb1b07f7e1

commit 9a39315d467b0641169f8d5dbd5d9eeb1b07f7e1
Author:     Katayama Hirofumi MZ <[email protected]>
AuthorDate: Wed May 29 19:59:40 2019 +0900
Commit:     GitHub <[email protected]>
CommitDate: Wed May 29 19:59:40 2019 +0900

    [SYSSETUP] Set registry hostname in WriteComputerSettings (#1589)
    
    Based on @Doug-Lyons's patch. CORE-16067
---
 dll/win32/syssetup/wizard.c | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/dll/win32/syssetup/wizard.c b/dll/win32/syssetup/wizard.c
index 1e541da3f1..8422a9c9c6 100644
--- a/dll/win32/syssetup/wizard.c
+++ b/dll/win32/syssetup/wizard.c
@@ -534,6 +534,8 @@ WriteComputerSettings(WCHAR * ComputerName, HWND hwndDlg)
 {
     WCHAR Title[64];
     WCHAR ErrorComputerName[256];
+    LONG lError;
+    HKEY hKey = NULL;
 
     if (!SetComputerNameW(ComputerName))
     {
@@ -560,6 +562,31 @@ WriteComputerSettings(WCHAR * ComputerName, HWND hwndDlg)
     /* Set the accounts domain name */
     SetAccountsDomainSid(NULL, ComputerName);
 
+    /* Now we need to set the Hostname */
+    lError = RegOpenKeyExW(HKEY_LOCAL_MACHINE,
+                           
L"SYSTEM\\CurrentControlSet\\Services\\Tcpip\\Parameters",
+                           0,
+                           KEY_SET_VALUE,
+                           &hKey);
+    if (lError != ERROR_SUCCESS)
+    {
+        DPRINT1("RegOpenKeyExW for Tcpip\\Parameters failed (%08lX)\n", 
lError);
+        return TRUE;
+    }
+
+    lError = RegSetValueEx(hKey,
+                           L"Hostname",
+                           0,
+                           REG_SZ,
+                           (LPBYTE)ComputerName,
+                           (wcslen(ComputerName) + 1) * sizeof(WCHAR));
+    if (lError != ERROR_SUCCESS)
+    {
+        DPRINT1("RegSetValueEx(\"Hostname\") failed (%08lX)\n", lError);
+    }
+
+    RegCloseKey(hKey);
+
     return TRUE;
 }
 

Reply via email to