CnCrypt代码 之 为磁盘设备分配和移除盘符

原创 2016年07月19日 03:19:04
BOOL ChangeMountPoint(int nDriveNo, LPCTSTR lpDevice, BOOL bAddMountPoint)
{
	BOOL bResult = FALSE;
	TCHAR szDriveLetterAndSlash[4] = { 0 };
	TCHAR szDriveLetter[3] = { 0 };
	TCHAR szUniqueVolumeName[MAX_PATH] = { 0 };
	szDriveLetter[0] = (WCHAR)(nDriveNo + L'A');
	szDriveLetter[1] = TEXT(':');
	szDriveLetter[2] = TEXT('\0');

	szDriveLetterAndSlash[0] = (WCHAR)(nDriveNo + L'A');
	szDriveLetterAndSlash[1] = TEXT(':');
	szDriveLetterAndSlash[2] = TEXT('\\');
	szDriveLetterAndSlash[3] = TEXT('\0');
	if (bAddMountPoint)
	{
		//Try to Attach lpDevice to lpDriveLetter
		bResult = DefineDosDevice(DDD_RAW_TARGET_PATH, szDriveLetter,
			lpDevice);

		if (bResult)
		{
			if (!GetVolumeNameForVolumeMountPoint(szDriveLetterAndSlash,
				szUniqueVolumeName,
				MAX_PATH))
			{
				//Can't Find Attached lpDevice 's VolumeName
				szUniqueVolumeName[0] = '\0';
			}

			bResult = DefineDosDevice(
				DDD_RAW_TARGET_PATH | DDD_REMOVE_DEFINITION |
				DDD_EXACT_MATCH_ON_REMOVE, szDriveLetter,
				lpDevice);

			if (!bResult)
				return bResult;

			bResult = SetVolumeMountPoint(szDriveLetterAndSlash,
				szUniqueVolumeName);
		}
	}
	else
	{
		bResult = DeleteVolumeMountPoint(szDriveLetterAndSlash);
	}

	return bResult;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

windows2003不能自动分配USB移动硬盘盘符的解决方法:

windows2003不能自动分配USB移动硬盘盘符的解决方法: 开始——>运行——>mountvol /e——>回车——>重启机器,win2003就会自动分配盘符给USB移动硬盘 mountvo...
  • Micro_lee
  • Micro_lee
  • 2006年12月23日 19:56
  • 1488

win7安装后系统保留分区无法分配盘符导致无法激活原因

在用光驱安装win7时,启动时有两个光驱启动方式,
  • df0128
  • df0128
  • 2014年05月21日 17:43
  • 5822

Linux磁盘设备名变了

/dev/sde /dev/sdb /dev/sdc /dev/sdd /dev/sdf /dev/sdg /dev/sdh /dev/sdi /dev/sdj /dev/sdk ...
  • wesleyflagon
  • wesleyflagon
  • 2014年04月18日 14:57
  • 1247

TrueCrypt代码 之 通过磁盘设备名获取到对应盘符

TrueCrypt 提供了一种通过驱动获取磁盘设备路径对应盘符的方法,需要依赖TrueCrypt驱动提供的CC_IOCTL_GET_RESOLVED_SYMLINK消息来获取,代码如下 BOOL R...
  • cncrypt
  • cncrypt
  • 2016年07月14日 14:52
  • 593

Windows Server 2003 r2 系统分配移动硬盘的盘符

Windows Server 2003系统能够识别MP3和U盘移动设备,但是插上移动硬盘的时候并不能像MP3和U盘一样自动播放,而且显示自动分配的盘符,这些要靠我们自己手动配置,以下是我个人经历的情况...
  • scholar_man
  • scholar_man
  • 2016年04月23日 10:01
  • 1003

如何固定U盘的盘符

我们重装系统进入WinPE系统时,在不同的电脑里U盘的盘符是不同的,有的电脑U盘盘符为C盘,这给我们装系统带来很大的不方便,因此,固定U盘的盘符是必要的。现在为大家介绍固定U盘盘符的两个方法,前提是W...
  • yanying861212
  • yanying861212
  • 2017年03月27日 17:39
  • 461

【操作系统-Windows】 efi系统分区设定盘符

1、磁盘管理 计算机-》管理 2、修改盘符 ①开始-》附件-》【右击】命令提示符-》【左击】以管理员身份运行(A) ②输入以下命令提示符 diskpart sel disk 0 list ...
  • chenlu5201314
  • chenlu5201314
  • 2014年03月03日 11:21
  • 1537

(2017.9.22更新)TrueCrypt中国版CnCrypt V1.23(磁盘加密)

许多网友在电脑中都有需要保密的文件,如工作文档、私人日记、照片等,经过XX门事件之后,相信各位网友都对自己电脑里的一些隐私文件的保存问题有了更高的安全要求。生活中却有许多的不安全因素会使得这些需要保密...
  • cncrypt
  • cncrypt
  • 2015年09月21日 16:55
  • 7707

停用及启用磁盘设备、修改盘符代码

void ResetHDState(bool bEnable){    GUID guid = DiskClassGuid;    HDEVINFO hDevinfo = SetupDiGetClas...
  • gavin1203
  • gavin1203
  • 2009年12月03日 14:44
  • 526

CnCrypt代码 之 获取程序自身版本号

BOOL GetProgramVersion(WCHAR* lpVersion) { WCHAR szVersionBuffer[8192] = { 0 }; DWORD dwVerSize; ...
  • cncrypt
  • cncrypt
  • 2016年07月14日 15:23
  • 191
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:CnCrypt代码 之 为磁盘设备分配和移除盘符
举报原因:
原因补充:

(最多只允许输入30个字)