16,548
社区成员




int Length = GetLogicalDriveStrings(0,NULL);
后面的我大概知道在调用一下这个API然后循环一下。最后用messagebox弹出来。
TCHAR* szBuf = NULL;
DWORD dwLen = GetLogicalDriveStrings(0, szBuf);
if(!dwLen)
{
return ;
}
dwLen += sizeof(TCHAR);
szBuf = new TCHAR[dwLen];
memset(szBuf, 0, dwLen*sizeof(TCHAR));
if(GetLogicalDriveStrings(dwLen, szBuf))
{
TCHAR* pTmp = szBuf;
do
{
AfxMessageBox(pTmp);
pTmp = _tcschr(pTmp, _T('\0'));
}
while (*(++pTmp));
}
#define MAX_BUFFER 512
TCHAR szBuf[MAX_BUFFER] = {0};
if(GetLogicalDriveStrings(MAX_BUFFER-1, szBuf))
{
TCHAR* pTmp = szBuf;
do
{
AfxMessageBox(pTmp);
pTmp = _tcschr(pTmp, _T('\0'));
}
while (*(++pTmp));
}