2016-09-23 140 views
1

我使用以下批處理腳本爲登錄到Windows 7計算機的所有域用戶自動映射網絡共享。映射網絡驅動器批處理腳本和非域用戶的問題

@echo off 
net use s: "\\domain.com\path\to\share" 

我已將它放入C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup文件夾,因此它將在所有用戶登錄時運行。 如果有更好的方法,請讓我知道。

這適用於域用戶,但要求本地用戶輸入用戶名和密碼。

我想讓我的腳本更優雅一些。如果本地用戶登錄,我希望腳本退出/關閉。我必須編寫執行一些檢查的代碼。我只是不知道如何。

(編輯):不幸的是,註冊表編輯已被IT部門禁用。我也無法訪問活動目錄和組策略系統。

+1

域用戶的登錄腳本應該存在於域控制器上的NETLOGON/LOGONSCRIPTS文件夾中。 – Squashman

回答

1

首先,是的,還有更好的辦法。對於所有用戶,創建在註冊表項:

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run 

僅適用於當前用戶,創建在註冊表項:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run 

你也可以把你的腳本Netlogon共享,如果使用域。

您可以檢查%USERDNSDOMAIN%變量是否包含您的域。 這裏是一個完整的組確認登錄腳本,你可以下手:

https://github.com/deajan/windows_scripts/tree/master/bin/LogonAD

好運。

0

你可以給「用戶名」提示符(一個不存在的用戶名)anwser並將STDOUT和STDERR的輸出重定向到NUL。對於域成員,這個答案將被忽略(因爲沒有問題)。

echo NoAccess|net use s: "\\domain.com\path\to\share" >nul 2>&1 
+0

如果我想使用實際的用戶名和密碼,我該怎麼做? – user2427836

+0

'淨使用/?' - 如果您不在乎以明文形式輸入密碼。 – Stephan