查MSDN,
Header: Declared in Winbase.h; include Windows.h.
然后代码里有#include<windows.h>为啥编译还是提示未定义呢
到Winbase.h里搜了也没有,真是坑人啊

解决方案 »

  1.   


    #include <Windows.h>void GetFileLength()
    {
    LPCSTR path = "stdafx.h";
    HANDLE hFile = CreateFile(path, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
    if(hFile == INVALID_HANDLE_VALUE)
    return; LARGE_INTEGER size;
    BOOL bRet = GetFileSizeEx(hFile, &size); CloseHandle(hFile); if(bRet)
    TRACE("size: %ld \r\n",size.QuadPart);
    else
    TRACE("get error %d",GetLastError());
    }测试OK。该函数定义在winbase.h中,而windows.h已经include了winbase.h。
      

  2.   

    看来VC6真的太老了。自带的winbase.h里都没有,得单独安装SDK的才有