几个基本的磁盘文件管理编程问题,知道多少说多少,来者有分!(120分)分不够再给!

snake1122 2002-01-18 09:19:11
如何编程实现下列问题:
1。如何查询磁盘空间大小?
2。如何根据文件名查询文件以及得到文件大小?用_searchenv()可以查到文件吗?
3。如何播放.vox和.wave语音文件?
4。如何转换语音文件,从.vox转换为.wave(调用towave这个程序也可)?
5。如何压缩转储文件(尤其是同时压缩转储多个文件)?


...全文
142 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunny7516huang 2002-01-23
  • 打赏
  • 举报
回复
CFile::GetStatus()静态函数,返回CFileStatus 对象,方便取回文件的各种属性,包你爽
snake1122 2002-01-23
  • 打赏
  • 举报
回复
to sunny7516huang(蜀山剑侠):
你来迟了,已经撒分,不好意思!
snake1122 2002-01-20
  • 打赏
  • 举报
回复
大家帮我想想!谢谢了!
worldsuperstar 2002-01-18
  • 打赏
  • 举报
回复
zip的dll从哪儿能获取?

snake1122 2002-01-18
  • 打赏
  • 举报
回复
to shibichen(史史):
别急嘛,问题还没讨论完呢!不过,只能给你1分,除非你也帮我找找资料。:)
snake1122 2002-01-18
  • 打赏
  • 举报
回复
还有,win api 中播放声音文件的api函数是什么来着?想不起来了,也没能在msdn上找到!
shibichen 2002-01-18
  • 打赏
  • 举报
回复
分呢?
snake1122 2002-01-18
  • 打赏
  • 举报
回复
谢谢各位!第一问和第二问解决了!

to zheng_rui():
3。如何调用mediaplay播放呢?
4。我试验一下。
5。zip的dll从哪儿能获取?

to hujun614(胡均):
5。能讲详细点吗?如何得到那些开发包呀?

hujun614 2002-01-18
  • 打赏
  • 举报
回复
如何查询磁盘空间大小?
GetDiskFreeSpace
The GetDiskFreeSpace function retrieves information about the specified disk, including the amount of free space on the disk.

This function has been superseded by the GetDiskFreeSpaceEx function. New Win32-based applications should use GetDiskFreeSpaceEx.

BOOL GetDiskFreeSpace(
LPCTSTR lpRootPathName, // pointer to root path
LPDWORD lpSectorsPerCluster, // pointer to sectors per cluster
LPDWORD lpBytesPerSector, // pointer to bytes per sector
LPDWORD lpNumberOfFreeClusters,
// pointer to number of free clusters
LPDWORD lpTotalNumberOfClusters
// pointer to total number of clusters
);

2。如何根据文件名查询文件以及得到文件大小?
FindFirstFile
The FindFirstFile function searches a directory for a file whose name matches the specified filename. FindFirstFile examines subdirectory names as well as filenames.

HANDLE FindFirstFile(
LPCTSTR lpFileName, // pointer to name of file to search for
LPWIN32_FIND_DATA lpFindFileData
// pointer to returned information
);
FindFirstFile用这个结构来保存文件相关信息。
typedef struct _WIN32_FIND_DATA { // wfd
DWORD dwFileAttributes;
FILETIME ftCreationTime;
FILETIME ftLastAccessTime;
FILETIME ftLastWriteTime;
DWORD nFileSizeHigh;
DWORD nFileSizeLow;
DWORD dwReserved0;
DWORD dwReserved1;
TCHAR cFileName[ MAX_PATH ];
TCHAR cAlternateFileName[ 14 ];
} WIN32_FIND_DATA;

5。如何压缩转储文件(尤其是同时压缩转储多个文件)?
有很多winzip的DLL开发包,可以用来压缩转储多个文件。

zheng_rui 2002-01-18
  • 打赏
  • 举报
回复
1.GetFreeDiskEx()磁盘空间大
2.用CFileFind finder;
if(finder.findfile(filename))
{
//exist
}
CFile::GetStatus 文件大小
3.用Mediaplayer组见播放
4.shellexe(towave)如何?
5
用zip来压缩如何,好像有一库的。压缩多个和压缩一个好像关系不大把?
littleXX 2002-01-18
  • 打赏
  • 举报
回复
查询磁盘空间大小: SHGetDiskFreeSpace
_searchenv()可以查到当前目录中的文件。
如何根据文件名查询文件以及得到文件大小:FindFirstFile, FindNextFile。
snake1122 2002-01-18
  • 打赏
  • 举报
回复
to zheng_rui():
不可以直接调用它吗?
windows自带了multimedia control,我准备用这个控件!这两个谁好?
snake1122 2002-01-18
  • 打赏
  • 举报
回复
GetFreeDiskEx()调用问题搞定!
sdsuper 2002-01-18
  • 打赏
  • 举报
回复
mark!~!~!~
zheng_rui 2002-01-18
  • 打赏
  • 举报
回复
mediaplayer 是windows的标准组建,是个activex 空间,毁掉吧
snake1122 2002-01-18
  • 打赏
  • 举报
回复
GetFreeDiskEx()如何调用呀?
我写如下代码:
BOOL TestDisk;
ULARGE_INTEGER * m_DiskFreeSpaceMy=NULL;
ULARGE_INTEGER * m_DiskFreeSpaceMy1=NULL;
ULARGE_INTEGER * m_DiskFreeSpaceMy2=NULL;
TestDisk=::GetDiskFreeSpaceEx(NULL,m_DiskFreeSpaceMy,m_DiskFreeSpaceMy1,m_DiskFreeSpaceMy2);
if(TestDisk)
{
m_DiskFreeSpace.Format("%f",m_DiskFreeSpaceMy->QuadPart);
m_DiskFreeSpace=_T(m_DiskFreeSpaceMy->QuadPart);
UpdateData(FALSE);
}

我想得到当前硬盘的空间大小,结果什么也没得到(三个变量全部是空),请问哪儿出错了?

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧