我在C++端寫了一個函數,參數有一個char* 類型的字符串表示文件名,函數里面通過調用win32API實現將這個文件名所指向的文件寫入系統剪切板便于用戶在別處手動粘貼。C#腳本導入動態鏈接庫的時候,形參聲明為了byte[]類型,在傳遞實參時,使用System.Text.Encoding.ASCII.GetBytes將string類型轉換成ASII字符序列。如果動態鏈接庫發布x64版本,中文的路徑和文件名都正常,可是如果動態鏈接庫發布86版本,傳遞過去的字符串如果帶有中文路徑就會出現亂碼,而如果只是中文文件名,。目錄是英文和數字,就正常。據我所知系統位數不會影響字符串編碼吧?請問有誰知道原因。
添加回答
舉報
0/150
提交
取消