這幾天做乙個通訊程式,要通過「執行」開啟乙個程序
結果有時候可以正常呼叫,有時候就出現問題
出問題**如下:
process p=process.start(t_path.text.tostring(),t_file.text.tostring());
process.start()第乙個引數是執行的程式名稱,後面是該程式引數
如果這兩個路徑中不含空格的時候就可以正常執行,
如果包含像"d:\program files\"或者"g:\documents and settings"之類的路徑程式就會出問題
原因是在執行行裡面 如果執行的程式只接收乙個引數,引數裡面夾乙個空格就相當於回車
也就是說,如果執行輸入:c:\aa.exe d:\program files\tt.txt
其實執行的是:c:\aa.exe d:\program
這樣肯定會出錯了
正確的寫法應該是:
process p=process.start("\""+t_path.text.tostring()+"\"","\""+t_file.text.tostring()+"\"");
這種寫法絕對保險。
解決RUN的路徑裡有空格的問題
在vbs中,如果run的路徑裡有空格,一般情況下都要將路徑進行轉換,轉換成vbs認識的格式,如 路徑c program files 1.bat一般要寫成 c progra 1 1.bat,這本來也沒有什麼,只是我對這種轉換德規則不是很熟悉,在轉換中經常出現錯誤。幸好在 優游天下 中發現了這麼一段 可...
解決https證書匯入路徑有空格問題
最近專案jdk從1.6換成了1.7,安裝的時候把jdk裝在了program files x86 下,結果使用命令安裝https的整數總是報錯路徑有空格錯誤。後來研究了下,按著想法使用了如下方法,結果還真行。就記錄一下 原匯入是這樣的 keytool import trustcacerts alias...
bash中正確處理檔案或路徑名中的空格
筆者在用乙個pdftohtml命令把一大堆 生成 的指令碼書寫過程中,遇到乙個問題 名稱的空格在下面的 中會被錯誤分割 bin bash forfile in ls 1 這裡的 1是第乙個輸入引數,遍歷 1下的檔案 doecho file done 目錄是這樣的執行結果是這樣的,很明顯沒能處理好空格...