やりたいのは、PythonからPs1ファイルにあるPowershellの関数を引数つきの実行です。
具体的には、Pythonから、任意のディレクトリを圧縮してRSA暗号化するという操作をします。
しかし、以下のエラーが出ます。Python初心者です。どうか解決をご教授ください。
powershell
1OSError: [WinError 193] %1 は有効な Win32 アプリケーションではありません。
以下がソースの一部です
powershell
1function Encrypto( [string[]]$PublicKeys, $Path, $Outfile ){ 2#$Outfile は $nullでもOKです。 3~ 4~ 5 try{ 6 # ファイルに出力する 7 [System.IO.File]::WriteAllBytes($Outfile ,$SignaturedEncriptoDataByte) 8 } 9 catch{ 10 echo "Encrypto fail !! : $Outfile" 11 exit 12 } 13 14 echo "Encrypto $Outfile" 15} 16
python3
1 class conf() 2 ~ 3 # crypto 4 self.crypto = { 5 "script_file" : "C:/xxxx/python/PSCrypto-master/PSCrypto.ps1", 6 "compress" : "zip", 7 "public_key" : "C:/xxxx/python/PSCrypto-master/PublicKeys/PublicKey.xml" 8 } 9 ~ 10 ~ 11 def encrypt(self, filepath): 12 self.cmd = [conf.crypto["script_file"], 13 '-Mode', 14 'Encrypto', 15 '-PublicKeys', 16 conf.crypto["public_key"], 17 '-Path', 18 filepath, 19 ] 20 subprocess.Popen(self.cmd) 21
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。