[問題] 怎麼取得執行檔底下資料夾的所有檔案名稱

看板C_and_CPP作者 (阿哈哈)時間14年前 (2009/09/07 14:17), 編輯推噓1(1017)
留言18則, 4人參與, 最新討論串1/2 (看更多)
就是寫出一個執行檔 她可以印出本身資料夾裡的所有所有檔名 我是有去查了一下 是打算用 GetCurrentDirector + _findfirst 但是程度不好合不起來 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.123.236.55 ※ 編輯: taylorabc 來自: 140.123.236.55 (09/07 14:34) ※ 編輯: taylorabc 來自: 140.123.236.55 (09/07 14:34)

09/07 14:43, , 1F
CFileFind
09/07 14:43, 1F

09/07 19:14, , 2F
列出全部資料夾的 http://nopaste.info/cb3294f94d.html
09/07 19:14, 2F

09/07 19:15, , 3F
要列出檔名的稍微改一下就行了
09/07 19:15, 3F

09/07 22:37, , 4F
我用VC6成功 VC2008就不能編譯耶
09/07 22:37, 4F

09/07 22:38, , 5F
'GetCurrentDirectoryW' : 無法將參數 2 從 'char [261]
09/07 22:38, 5F

09/07 22:38, , 6F
' 轉換成 'LPWSTR'
09/07 22:38, 6F

09/08 00:56, , 7F
沒想到都沒人回, 簡單回一下, char是一般1byte的字元,
09/08 00:56, 7F

09/08 00:56, , 8F
windows下有另一種wide char, 沒記錯應該是w_char這個形
09/08 00:56, 8F

09/08 00:57, , 9F
態, 大小是2byte的樣子; 這造成了凡是系統與字串相關的
09/08 00:57, 9F

09/08 00:57, , 10F
函數都需要兩份, 像MessageBoxA/MessageBoxW; 但是這樣
09/08 00:57, 10F

09/08 00:58, , 11F
會讓寫程式的人困擾, 所以更常用TCHAR包起來, 然後依
09/08 00:58, 11F

09/08 00:58, , 12F
predefine在compile時覺得用A/W. 你的問題就在於最後
09/08 00:58, 12F

09/08 00:59, , 13F
呼叫到了W版的, 可是你傳入的參數char[]是A版用的. 簡單
09/08 00:59, 13F

09/08 01:00, , 14F
搞改用GetCurrentDirectoryA()試試, 再不然請去研究一
09/08 01:00, 14F

09/08 01:00, , 15F
下新環境的w_char/TCHAR這些型態與API的用法.
09/08 01:00, 15F

09/08 01:00, , 16F
比較精確的說明看有沒有其他大大願意補充吧.
09/08 01:00, 16F

09/08 01:01, , 17F
再不然就請原po自己去查Programing Windows的書了XD
09/08 01:01, 17F

09/08 14:24, , 18F
嗯嗯 再研究一下
09/08 14:24, 18F
文章代碼(AID): #1AfALhtD (C_and_CPP)
文章代碼(AID): #1AfALhtD (C_and_CPP)