全2件 (2件中 1-2件目)
1
UWSCのビルトイン関数「powershell」は、端末デフォルトのpowershellを起動しているみたいです。 なので、Win7マシンでexecutionpolicyをいじっていない場合、外部スクリプトの実行不可でスレッドアパートンメントはMTAの状態でpowershellを動かします。 windows.formsでGUI画面を出力したり、自作ライブラリを読み込んだりといった使い方ができないので、対策。使い方はこんな感じ。call OptionedPowershell.uwsdim options[]="-sta","-executionplicy bypass"textblock src[threading.thread]::CurrentThread.GetApartmentState()get-ExecutionPolicyendtextblockmsgbox( OptionedPowershell( src, options ) ) OptionedPowershell.uwsfunction OptionedPowershell( src, options[] ) encodedSource =powershell( "[Convert]::ToBase64String([System.Text.Encoding]::Unicode.GetBytes( '" + src + "' ))" ) encodedSource =replace( encodedSource, "<#CR>", "" ) result =powershell( "powershell " + join( options, " " ) + " -EncodedCommand " + encodedSource )fend
2019.03.25
コメント(0)
フォルダ選択ダイヤログを開くスクリプトを書いたんだけど、肝心のダイヤログが他のウインドウの陰に隠れて気付かれない、という問題が起きました。対策を調べてみたら、こんな感じで書けばいいのではと。$folderbrowser=new-object system.windows.forms.folderBrowserDialog$dmy=new-object system.windows.forms.form$dmy.topmost=$true$folderbrowser.showdialog($dmy)ファイル選択ダイヤログだと、$filedialog=new-object system.windows.forms.openFileDialog$filedialog.showhelp=$true$dmy=new-object system.windows.forms.form$dmy.topmost=$true$filedialog.showdialog($dmy)
2019.03.01
コメント(0)
全2件 (2件中 1-2件目)
1
![]()

