[問題] VC++ DeviceIoControl時指標內容變cd dd
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
VC++
問題(Question):
指標所指位置的值,在下DeviceIoControl時變動
ExFunction(BYTE* byDataIndex, DWORD addr, DWORD length)
{
for(...)
{
1. 利用DeviceIoControl讀取Device DATA
byDataIndex所指的值的值會在DeviceIoControl動作的時候值全變成皆為0xdd
2. 利用DeviceIoControl對Device write DATA
byDataIndex所指的值的值會在DeviceIoControl動作的時候值全變成皆為0xcd
迴圈中繼續--
遇到DeviceIoControl時byDataIndex所指的值的值可能變回原本所指正確data
}
}
預期的正確結果(Expected Output):
將byDataIndex所指data寫入device
錯誤結果(Wrong Output):
寫入的data陣列有些段data整段變成0xCD或是0xDD
補充說明(Supplement):
function我有單獨拿出來執行測試過沒有問題,
但加入現在寫的程式中卻出現上述問題,
debug很久才發現是掛在DeviceIoControl這邊,但還是不知道怎麼解...
請問這問題可能是什麼問題導致? 如何解決?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.163.49.109
→
05/04 14:21, , 1F
05/04 14:21, 1F
→
05/04 15:13, , 2F
05/04 15:13, 2F
→
05/04 19:15, , 3F
05/04 19:15, 3F
→
05/04 19:17, , 4F
05/04 19:17, 4F
→
05/04 20:18, , 5F
05/04 20:18, 5F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章