LANDesk を使用していて、パッケージを使用してスクリプトを配布している場合は、スクリプトをデフォルトのLocalSystemとして実行するか、現在のユーザーのアカウントとして実行するかを選択できます。
パッケージのプロパティを開き、[アカウント] に移動して、[現在のユーザーのアカウント] を選択します。マシンにログインしているユーザーがいない場合、タスクは失敗します。
しかし、私の理解が正しければ、問題は、ユーザーが自分のデスクトップにリンクを作成することを許可されていないことですか? もしそうなら、この解決策は機能せず、とにかくタスクは失敗します!
私がよく使用するもう 1 つの方法は、すべてのローカル プロファイルをループして各ユーザーのデスクトップにリンクを作成するスクリプトを実行することです。PowerShell スクリプトの代わりに WSH スクリプトを使用しても問題ない場合は、次のようなスクリプトを使用できます。
Const HKEY_LOCAL_MACHINE = &H80000002
Set objRegistry = GetObject("winmgmts:\\.\root\default:StdRegProv")
Set ws = CreateObject("Wscript.Shell")
strKeyPath = "SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList"
objRegistry.EnumKey HKEY_LOCAL_MACHINE, strKeyPath, arrSubkeys
For Each objSubkey In arrSubkeys
strValueName = "ProfileImagePath"
strSubPath = strKeyPath & "\" & objSubkey
objRegistry.GetExpandedStringValue HKEY_LOCAL_MACHINE, strSubPath, strValueName, strProfile
If Left(strProfile, Len(ws.ExpandEnvironmentStrings("%windir%"))) <> ws.ExpandEnvironmentStrings("%windir%") Then
Set objShtCut = ws.CreateShortcut(strProfile & "\Desktop\PI_Users.lnk")
objShtCut.TargetPath = "\\htntfs04\PI_Users"
objShtCut.Save
Set objShtCut = Nothing
End If
Next