我使用了搜索引擎。我找不到我想要的東西,而且我在編程方面也不太好。我有一個使用hashlib和M2Crypto的.py腳本,當我使用鐵蟒從c#運行程序時,它說即沒有模塊命名爲hashlib。我找不到將hashlib導入到c#或ironpython的方法,即使我搜索了所有的網絡,我也嘗試了下面的代碼,但它似乎並不工作。請你幫忙,謝謝。從C啓動python腳本的方法#
Process p = new Process(); // create process (i.e., the python program
GetShortPathName(decdbpath, shortPath, shortPath.Capacity);
GetShortPathName(db, shortPath2, shortPath2.Capacity);
p.StartInfo.FileName = "C:\\Python27\\python.exe";
p.StartInfo.UseShellExecute = false;
p.StartInfo.Arguments = a+"\\pycode.py" + shortPath + " " +
txt_entermail.Text + " >" + db;
p.Start(); // start the process (the python program)
p.WaitForExit();
MessageBox.Show("Decryption Done");
終於讓我找到了問題,路徑PY腳本中包含空格,我解決了問題,但現在python腳本是拒絕接受的參數?感謝
string format = string.Format(shortPath + "\\pycode.py"+" "+shortPath2.ToString() + " " + txt_entermail.Text + " > " + shortPath3.ToString());
這是結果:
使用C:\用戶\ WIN7 \齊亞德\ MOBILE〜1 \ DBEXPL〜1 \ WINDOW〜1 \ BIN \調試\ pycode.py參數1參數2>參數3
此線程是否對您有幫助? http://stackoverflow.com/questions/11779143/run-a-python-script-from-c-sharp –
我看到它,它沒有幫助:( –
我注意到,p.StartInfo.RedirectStandardOutput = true;沒有設置爲true。你嘗試過嗎? –