* 请看源码 *

qq_13939330 2004-04-08 05:04:16
#define _WIN32_WINNT 0x0500


#include <windows.h>
#include <Winbase.h>
#include <stdio.h>
#pragma comment (lib,"Kernel32.lib")


#define BUFSIZE 1024

void Syntax (char *argv)
{
printf( "%s, mount a volume at a mount point.\n", argv );
printf( "For example, \"mount c:\\mnt\\fdrive\\ f:\\\"\n" );
}

int main( int argc, char *argv[] )
{
BOOL bFlag;
char Buf[BUFSIZE]; // temporary buffer for volume name

if( argc != 3 )
{
Syntax( argv[0] );
return( -1 );
}

// We should do some error checking on the inputs. Make sure
// there are colons and backslashes in the right places, etc.

bFlag = GetVolumeNameForVolumeMountPoint(
argv[2], // input volume mount point or directory
Buf, // output volume name buffer
BUFSIZE // size of volume name buffer
);

if (bFlag != TRUE)
{
printf( "Retrieving volume name for %s failed.\n", argv[2] );
return (-2);
}
printf( "Volume name of %s is %s\n", argv[2], Buf );

bFlag = SetVolumeMountPoint(
argv[1], // mount point
Buf // volume to be mounted
);

if (!bFlag)
printf ("Attempt to mount %s at %s failed.\n", argv[2], argv[1]);

return (bFlag);
}



这是MSDN 中的一段程序,但就是不能通过编译,说SetVolumeMountPoint
与GetVolumeNameForVolumeMountPoint没定义,我头文件都包含了呀。我的
系统是WIN2000 pro
...全文
6 点赞 收藏 4
写回复
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
makeshi 2004-04-09
#define _WIN32_WINNT 0x0500应该放到StdAfx.h里面就可以了
回复
flyelf 2004-04-09
可以利用LoadLibrary和GetProcAddress得到这两个api,然后使用
回复
seaquester 2004-04-09
VC6中不包含这两个API,装个SDK或者安装VC++.NET。
回复
用楼上们的方法肯定能解决
回复
发动态
发帖子
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
社区公告
暂无公告