int SavePicToMemory(
unsigned DeviceID ,
char* cFrontImgBuf ,
char* cRearImgBuf ,
int* iFrontLen ,
int* iRearLen )
引數說明:
DeviceID:[輸入] USB設備內部ID號,取值范圍0-16。
cFrontImgBuf:[輸出] 保存正面影像資料資訊指標,不能為空。
cRearImgBuf:[輸出] 保存反面影像資料資訊指標,不能為空。
iFrontLen:[輸出] 正面影像資料長度。
iRearLen:[輸出] 反面影像資料長度。
跪求高手 幫忙轉成C#的代碼!!!
uj5u.com熱心網友回復:
int SavePicToMemory(uint DeviceID ,
ref intptr cFrontImgBuf ,
ref intptr cRearImgBuf ,
ref int iFrontLen ,
ref int iRearLen )
uj5u.com熱心網友回復:
呼叫的時候,應該是intptr cFrontImgBuf = intprt.zero;
intptr cRearImgBuf = intprt.zero;
int iFrontLen=0;
int iRearLen=0;
int SavePicToMemory(1234,ref cFrontImgBuf ,ref cRearImgBuf,ref iFrontLen,ref iRearLen)
byte[] FrontImgData=https://bbs.csdn.net/topics/new byte[iFrontLen]
Marshal.Copy(cFrontImgBuf, FrontImgData,0, iFrontLen);
uj5u.com熱心網友回復:
char* 和 ref intptr 好像 不太對吧?uj5u.com熱心網友回復:

不知道你是不是這個意思,其實非空什么的可以代碼限制啊
uj5u.com熱心網友回復:
試過了。。確實不行!!!uj5u.com熱心網友回復:
char*,其實就是指標,他可以是任意東西一般我們翻譯的時候是根據背景關系翻譯
他說,你給我傳個字串,我們寫就是string
他說,我回傳字串,我們寫就是stringbuild
你這里背景關系的含義是,他回傳圖片資訊資料
我們認為其實他要給你byte[],和告訴你這個位元組陣列的長度
ref intptr 其實是回傳這個位元組陣列的索引0的那個元素的指標
所以后面我們用了copy去從他那個指標開始處從記憶體里copy他指定的長度到我們自己的陣列里
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/228655.html
標籤:C#
