我有点卡在这个API GetDriveType()
。每次这个API返回我DRIVE_NO_ROOT_DIR
,我传递像这样的“C:\”等驱动器字母即使对于我的主驱动器“C:\”该API返回相同的东西。卡住api getdrivetype
我在此之前调用GetLogicalDrives()
来检索。
OS:WinXP的SP3,NTFS文件系统
代码:编译器VS2005
int main() {
bool folder;
String * filename;
char individualdrive[4],alldrives[100];
memset(alldrives,0,100);
GetLogicalDriveStringsA(100,alldrives);
for(int i=0;(i<100)&&(alldrives[i]);i+=4) {
memset(individualdrive,0,4);
strncpy(individualdrive,alldrives+i,4); //extracting individual drive strings.
if(DRIVE_FIXED == GetDriveTypeW((LPCWSTR)individualdrive))
getfile((System::String*)individualdrive, filename,folder); }
return 0; }
我们如何在没有您的代码的情况下提供帮助?你需要发布它,所以我们可以看到你正在尝试的是什么;那么我们可以帮助弄清楚它有什么问题。另外,没有OS“Win sp3”;我们能猜到你的意思是“WinXP SP3”吗? – 2011-04-29 11:23:06
是的,操作系统是WinXp sp3。 – user1835004 2011-05-02 05:17:36
你需要格式化你的代码。在SO编辑器中,用鼠标选择所有代码,然后按编辑器上方的“{}”按钮。 – 2011-05-02 09:59:49