Windows-Server-2008

在 Windows 2008 上設置強製配置文件時,文件關聯不會保持不變

  • August 16, 2013

我目前有 3 個使用者在我的 Windows 2008 遠端桌面伺服器上使用強製配置文件。通過更改系統資料庫權限,設置配置文件文件夾的權限並設置初始使用者的配置文件,然後使用 .man 副檔名將其鎖定,我設法讓一切都發揮得很好。我的問題/問題圍繞遠端桌面上的關聯展開。

通常我會做以下…

1) Get all three users to log out
2) Change the profile from .man to .dat
3) Get the "profile template user" (a title I have given the first user I set up with the profile for) to log on.
4) Get that user to create a shortcut or set up a file association, etc.
5) Get that user to log off.
6) Rename the profile from .dat to .man

出於某種原因,除了文件關聯之外,我的所有更改似乎都從一個使用者到另一個使用者。我不能讓那一件事堅持下去!

想法?

當使用者登錄時,我最終創建了一個系統資料庫文件以用於組策略。在這種情況下,我在下面有一個範例,說明我在系統資料庫中使用環境變數所做的事情。

這有點棘手,但很容易做到。此範例將允許您使用駐留在使用者特定目錄中的程序 (Notepad++) 打開某種類型的文件 (.test)。我將此用於執行遠端桌面(AKA 終端伺服器)的 Windows 2008 伺服器上的一個場景,以允許每個使用者使用每個使用者帳戶安裝的程序,以便每個使用者可以使用不同的設置(例如:.ini 文件位於應用程序目錄)。注意:這並不重要,但文件夾“程序”是隱藏的,所以使用者看不到它。

Paths:
Application (notepad++): Y:\%username%\programs\Notepad++\notepad++.exe
File To Open (File.test): Y:\%username%\TestFiles\File.test

第 1 步。 如果您使用強製配置文件,請務必將 NTUSER.MAN 文件更改回 NTUSER.DAT。

步驟 2. 使用遠端桌面客戶端登錄您希望編輯的配置文件。

步驟 3. 打開 regedit 並刪除以下鍵(如果存在)。

HKEY_CURRENT_USER\Software\Classes\Applications\notepad++.exe HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts.test

步驟 4. 創建一個新的文本文件並將其命名為“original.reg”。填寫以下內容…

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Classes\Applications\notepad++.exe]

[HKEY_CURRENT_USER\Software\Classes\Applications\notepad++.exe\shell]

[HKEY_CURRENT_USER\Software\Classes\Applications\notepad++.exe\shell\open]

[HKEY_CURRENT_USER\Software\Classes\Applications\notepad++.exe\shell\open\command]
@=""

步驟 5. 刷新系統資料庫 (F5) 並查找新密鑰。應該看到“(預設)”值空白的“命令”鍵。在“command”鍵中添加一個名為“New Value #1”的新“可擴展字元串值”。將值設置為應用程序的路徑***“Y:%username%\programs\Notepad++\notepad++.exe” “%1”***。然後將“command”鍵作為“expanded.reg”導出到桌面。

步驟 6. 在記事本中編輯“expanded.reg”文件並複制**“New Value #1”**之後的所有數據。例如:=十六進制(2):22 …

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Classes\Applications\notepad++.exe\shell\open\command]
@=""
"New Value #1"=hex(2):22,00,59,00,3a,00,5c,00,25,00,75,00,73,00,65,00,72,00,6e,00,\
61,00,6d,00,65,00,25,00,5c,00,70,00,72,00,6f,00,67,00,72,00,61,00,6d,00,73,\
00,5c,00,4e,00,6f,00,74,00,65,00,70,00,61,00,64,00,2b,00,2b,00,5c,00,6e,00,\
6f,00,74,00,65,00,70,00,61,00,64,00,2b,00,2b,00,2e,00,65,00,78,00,65,00,22,\
00,20,00,22,00,25,00,31,00,22,00,00,00

步驟 7. 關閉擴展的.reg 文件並打開“original.reg”文件,然後將預設命令(即為空的“”)替換為剪貼板中的新十六進制值。文件“original.reg”現在應該如下所示……

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Classes\Applications\notepad++.exe]

[HKEY_CURRENT_USER\Software\Classes\Applications\notepad++.exe\shell]

[HKEY_CURRENT_USER\Software\Classes\Applications\notepad++.exe\shell\open]

[HKEY_CURRENT_USER\Software\Classes\Applications\notepad++.exe\shell\open\command]
@=hex(2):22,00,59,00,3a,00,5c,00,25,00,75,00,73,00,65,00,72,00,6e,00,\
61,00,6d,00,65,00,25,00,5c,00,70,00,72,00,6f,00,67,00,72,00,61,00,6d,00,73,\
00,5c,00,4e,00,6f,00,74,00,65,00,70,00,61,00,64,00,2b,00,2b,00,5c,00,6e,00,\
6f,00,74,00,65,00,70,00,61,00,64,00,2b,00,2b,00,2e,00,65,00,78,00,65,00,22,\
00,20,00,22,00,25,00,31,00,22,00,00,00

第 8 步。 現在我們已經準備好擴展變數,讓我們添加一個與應用程序關聯的擴展。將以下內容添加到“original.reg”文件中,使其如下所示…

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Classes\Applications\notepad++.exe]

[HKEY_CURRENT_USER\Software\Classes\Applications\notepad++.exe\shell]

[HKEY_CURRENT_USER\Software\Classes\Applications\notepad++.exe\shell\open]

[HKEY_CURRENT_USER\Software\Classes\Applications\notepad++.exe\shell\open\command]
@=hex(2):22,00,59,00,3a,00,5c,00,25,00,75,00,73,00,65,00,72,00,6e,00,\
61,00,6d,00,65,00,25,00,5c,00,70,00,72,00,6f,00,67,00,72,00,61,00,6d,00,73,\
00,5c,00,4e,00,6f,00,74,00,65,00,70,00,61,00,64,00,2b,00,2b,00,5c,00,6e,00,\
6f,00,74,00,65,00,70,00,61,00,64,00,2b,00,2b,00,2e,00,65,00,78,00,65,00,22,\
00,20,00,22,00,25,00,31,00,22,00,00,00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.test]

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.test\OpenWithList]
"a"="notepad++.exe"
"MRUList"="a"

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.test\OpenWithProgids]
"Notepad++_file"=hex(0):

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.test\UserChoice]
"Progid"="Applications\\notepad++.exe"

步驟 9. 打開 regedit 並刪除以下鍵(如果存在)。(是的,再做一次)…現在系統資料庫就像我們從未做過任何事情一樣,我們已經準備好將系統資料庫文件插入系統資料庫!

HKEY_CURRENT_USER\Software\Classes\Applications\notepad++.exe HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts.test

第 10 步。 如果您想將此應用於目前配置文件,則執行系統資料庫文件“original.reg”並將其插入系統資料庫。

就是這樣!現在所有 *.test 文件都將以“Y:%username%\programs\Notepad++\notepad++.exe”打開。去檢查系統資料庫並查看新的預設條目。

引用自:https://serverfault.com/questions/529631