W
wpsqsibo12
Unregistered / Unconfirmed
GUEST, unregistred user!
请教 同一个库函数 DELPHI和VC运行结果不同,请指教。
extern "C" _declspec(dllexport) int ProcessGridData(LPSTR lpszFilename,
int nColorNum,int nWayNum,int nFrameNum,BYTE* pRed,BYTE* pGreen,BYTE* pBlue);
//以下为VC执行代码
char szFilename[MAX_PATH]="c://a.bin";
int nColorNum = 3;
int nWayNum = 6;
int nFrameNum = 5;
BYTE pRed[2*5]= {0,0,0,0,0,0,0,0,0,0};
BYTE pGreen[2*5]={0,0,0,0,0,0,0,0,0,0};
BYTE pBlue[2*5] ={0,0,0,0,0,0,0,0,0,0};
int nRet = ProcessGridData(szFilename,
nColorNum, nWayNum, nFrameNum, pRed, pGreen, pBlue);
//以下是DELPHI中的引用
Procedure ProcessGridData(LpszFilename : array of char; ncolornum,nwaynum,nFrameNum :Integer; pR,pG,pB : array of byte) stdcall ;far external 'NEON_Transform.dll' ;
//以下为DELPHI执行代码
nColorNum :Integer;
nWayNum :Integer;
nFrameNum :Integer;
pR ,pG,pB : array of byte;
test :array [0..255] of char;
nColorNum:=3;
nWayNum :=6;
nFrameNum:=5;
SetLength(pR,10);
SetLength(pG,10);
SetLength(pB,10);
for i:=0 to 9 do
begin
pr:=0;
pg:=0;
pb:=0;
end;
test:='c:/1.bin';
ProcessGridData(test,ncolornum,nwaynum,nFrameNum,pr,pg,pb);
执行后,DELHI中的 C:/1.bin 文件和 VC执行后的BIN 文件不同,更奇怪的是,DELPHI 中,用同一个菜单多次执行结果也不同,但程序重启第一次执行的结果是一样的。
extern "C" _declspec(dllexport) int ProcessGridData(LPSTR lpszFilename,
int nColorNum,int nWayNum,int nFrameNum,BYTE* pRed,BYTE* pGreen,BYTE* pBlue);
//以下为VC执行代码
char szFilename[MAX_PATH]="c://a.bin";
int nColorNum = 3;
int nWayNum = 6;
int nFrameNum = 5;
BYTE pRed[2*5]= {0,0,0,0,0,0,0,0,0,0};
BYTE pGreen[2*5]={0,0,0,0,0,0,0,0,0,0};
BYTE pBlue[2*5] ={0,0,0,0,0,0,0,0,0,0};
int nRet = ProcessGridData(szFilename,
nColorNum, nWayNum, nFrameNum, pRed, pGreen, pBlue);
//以下是DELPHI中的引用
Procedure ProcessGridData(LpszFilename : array of char; ncolornum,nwaynum,nFrameNum :Integer; pR,pG,pB : array of byte) stdcall ;far external 'NEON_Transform.dll' ;
//以下为DELPHI执行代码
nColorNum :Integer;
nWayNum :Integer;
nFrameNum :Integer;
pR ,pG,pB : array of byte;
test :array [0..255] of char;
nColorNum:=3;
nWayNum :=6;
nFrameNum:=5;
SetLength(pR,10);
SetLength(pG,10);
SetLength(pB,10);
for i:=0 to 9 do
begin
pr:=0;
pg:=0;
pb:=0;
end;
test:='c:/1.bin';
ProcessGridData(test,ncolornum,nwaynum,nFrameNum,pr,pg,pb);
执行后,DELHI中的 C:/1.bin 文件和 VC执行后的BIN 文件不同,更奇怪的是,DELPHI 中,用同一个菜单多次执行结果也不同,但程序重启第一次执行的结果是一样的。