citrix インスタンス内で VBS スクリプトをトリガーするローカルの powershell スクリプトを取得しようとしています。イベントは次のようになります。
Windows エクスプローラーを開く Citrix インスタンス ----> Windows エクスプローラー セッションに入力されたスクリプトのネットワーク パス
Citrix レシーバーのインストールに付属の WfIcaLib.dll (ICOSDK) を使用しています。Citrix ICOSDK のドキュメント PDF は、こちらから入手できます。
これは私が使用しているコードで、Powershell コマンド ラインで完全に動作しますが、32 ビット ISE を使用すると、DLL がロードされたことを通知する以外に何もしません。エラーは発生しませんが、Powershell コマンドラインからまったく同じコマンドを実行したときのように、Citrix クライアントが実際に開くことはありません。
#load Citrix ICA Client SDK
[System.Reflection.Assembly]::LoadFile("C:\Program Files (x86)\Citrix\ICA Client\WfIcaLib.dll")
$ICA = New-Object WFICALib.ICAClientClass
$ICA.Address = "***.***.***.***:****"
$ICA.Application = "Windows ExplorerFED6"
$ICA.Username = "******"
$ICA.Domain = "**"
$ICA.Launch = $true
$ICA.Outputmode = [WfIcaLib.OutputMode]::OutputModeNormal
$ICA.SetProp("Password", "*********")
$ICA.TWIMode=$true
$ICA.Connect()
何か案は?
編集: 解決済み - 32 ビット ISE で再度開いてコードを動作させた後、.ps1 ファイルを実行できませんでした。コマンド プロンプトまたは 32 ビットの PowerShell コンソールからスクリプトを実行すると、どちらも機能しました。
Mike Garuccio が提案した方法を使用すると、うまくいきました。ほとんどの場合、タスク スケジューラを使用してスクリプトを実行することになります。