如题

解决方案 »

  1.   

    ===================================
    dir size
    ===================================
    #include <iostream>
    #import "scrrun.dll" raw_interfaces_only 
    int main()
    {
    CoInitialize(NULL);
    {
    try
    {
    Scripting::IFileSystem3Ptr fs;
    fs.CreateInstance(__uuidof(Scripting::FileSystemObject));
    Scripting::IFolderPtr folder;
    fs->GetFolder(_bstr_t("c:\\temp"),&folder);
    _variant_t vsize;folder->get_Size(&vsize);
    std::cout<<"c:\\temp size:"<<(long)vsize<<" bytes"<<std::endl;
    }
    catch(_com_error &e)
    {
    _bstr_t bstrSource(e.Source());
    _bstr_t bstrDescription(e.Description());
    std::cout<<"Get directory size via FileSystemObject, by masterz"<<std::endl;
    std::cout<<"COM error occurred,source:"<<(LPCTSTR)bstrSource<<std::endl;
    std::cout<<"Description:"<<(LPCTSTR)bstrDescription<<std::endl;
    }
    }
    CoUninitialize();
    return 0;
    }
      

  2.   


    WIN32_FIND_DATA fd;
    HANDLE hFile = FindFirstFile("*.*", &fd);
    if(hFile)
    {
    do{
    if( (fd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)!= FILE_ATTRIBUTE_DIRECTORY)
    {
    fd.nFileSizeLow //文件大小的低32位
    fd.nFileSizeHigh //文件大小的高32位位
    }
    }while(FindNextFile(hFile, &fd));
    FindClose(hFile);
    }//if(hFile)