Re: [問題] BCB中ShellExecute的問題

看板Programming作者時間17年前 (2008/07/23 07:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
※ 引述《Tsaochimai.bbs@ptt.cc (這下糗了.....)》之銘言: > 我在BCB中要使用ShellExecute...發現了一個檔案路徑的問題... > 這是我的執行方式..... > ShellExecute(NULL, "open", "exec.exe", 參數, NULL, SW_SHOW); > 其中1.exe這個執行檔後面會需要一些參數...這個參數是檔案路徑.... > 可能是C:\temp.txt, 這個exec.exe會打開temp.txt並且加入一些東西產生成 <略> 路徑名的反斜'\' 問題. C 語言一定要注意這點. 只要你發現執行結果奇怪, 而相關參數有檔案名稱 ( 以正斜[Unix]或反斜[MS Windows]作子目錄分隔), 你就要考慮C 語言脫逸 符號反斜的影響. 試著將單反斜加倍: C:\\temp.txt 或 C:\\SubDir\\temp.txt 每個反斜都要. 另外, 如果是網路名稱路徑, 如: \\Server\Path\temp.txt 就要改成 \\\\Server\\Path\\temp.txt ( 前面雙反斜變成可怕的4 反斜 ). 以前Unix發展C 語言時, 沒有這問題. 因為設計時都搭配系統特性 (Unix用正斜 '/' 當路徑分隔). 直到C 語言搬到DOS 下, 才出現這專家常識性的問題. -- ※ Origin: 楓橋驛站<bbs.cs.nthu.edu.tw> ◆ From: tommy @61.229.175.32
文章代碼(AID): #18XcQk00 (Programming)
文章代碼(AID): #18XcQk00 (Programming)