能力值:
(RANK:410 )
|
-
-
2 楼
VC没有错,MASM定义也没有错。最后一个参数是dwMoveMethod,只是你将liDistanceTOMove变量当成是Dword类型了。
The SetFilePointerEx function moves the file pointer of the specified file.
BOOL SetFilePointerEx(
HANDLE hFile,
LARGE_INTEGER liDistanceToMove, //这个变量是有符号的__int64的大整数变量,在32位的处理器上需要两个DWORD,DWORD
PLARGE_INTEGER lpNewFilePointer,
DWORD dwMoveMethod
);
typedef union _LARGE_INTEGER {
struct {
DWORD LowPart;
LONG HighPart; };
struct {
DWORD LowPart;
LONG HighPart;
} u;
LONGLONG QuadPart;
} LARGE_INTEGER, *PLARGE_INTEGER;
|
能力值:
( LV4,RANK:50 )
|
-
-
3 楼
invoke SetFilePointerEx,esi,@FileSize,NULL,FILE_BEGIN
你觉得这样有问题吗?
但是编译不通过
|
能力值:
( LV4,RANK:50 )
|
-
-
4 楼
哦,了解了~~
也就是说第一个值是句柄,第二个和大小的低位,第三个参数是大小的高位?
|
能力值:
(RANK:410 )
|
-
-
5 楼
//看MSDN,应该是这样调用。
invoke SetFilePointerEx,esi,iSize,-1,addr @lpdqSize,FILE_BEGIN
|
能力值:
(RANK:410 )
|
-
-
6 楼
最初由 lemony 发布 哦,了解了~~
也就是说第一个值是句柄,第二个和大小的低位,第三个参数是大小的高位?
是的。
|
|
|