紧急!
我用GetDiskFreeSpaceEx("c:",(PULARGE_INTEGER)&clu,(PULARGE_INTEGER)&sec,(PULARGE_INTEGER)&freeclu);但仍不理解如何得到正确值,用long 来转换的数据类型,得到的值是1,0,-21345523。最后一个值是负数,数字是随便写的!有劳了,各位大侠!

解决方案 »

  1.   

    Zhymax
    >谢谢,一样,,请问如何才能正确得到正确值
      

  2.   

    我用的就是"C:\\"相关代码如下:CString zxcstr(DWORD zvalue)
    {
    CString zxstr;
    zxstr.Format("%ld",zvalue);
    return zxstr;
    }void CZXbakupDlg::Ontest() 
    {
    // TODO: Add your control notification handler code here
    DWORD clu,sec,freeclu,talclu;
    GetDiskFreeSpaceEx("c:\\",(PULARGE_INTEGER)&clu,(PULARGE_INTEGER)&sec,(PULARGE_INTEGER)&freeclu);

    MessageBox("磁盘总空间:"+zxcstr(sec)+ "剩余空间:"+zxcstr(freeclu));

    }谢谢!
      

  3.   

    ULARGE_INTEGER lpFreeBytesAvailableToCaller;
    ULARGE_INTEGER lpTotalNumberOfBytes;
    ULARGE_INTEGER lpTotalNumberOfFreeBytes;GetDiskFreeSpaceEx("c:\\", &lpFreeBytesAvailableToCaller, &lpTotalNumberOfBytes, &lpTotalNumberOfFreeBytes);
      

  4.   

    看一下MSDN上的方法:http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/fs/getdiskfreespaceex.asp
      

  5.   

    谢谢各位!
    Snow_Ice11111: 所给例子转换成功,谢谢!