vc 获取U盘盘符


UINT DiskType;
 size_t   szAllDriveStrings   =   GetLogicalDriveStrings(0,NULL);   
char   *pDriveStrings   =   new   char[szAllDriveStrings   +   sizeof(_T( " "))];   
GetLogicalDriveStrings(szAllDriveStrings,pDriveStrings);   
size_t   szDriveString   =   strlen(pDriveStrings);   
while(szDriveString   >   0)   
{   
  AfxMessageBox(pDriveStrings);   
  DiskType=GetDriveType(pDriveStrings);   
  switch(DiskType)     
  {   
  case   DRIVE_NO_ROOT_DIR:   
   return;   
  case   DRIVE_REMOVABLE:   
   ::AfxMessageBox( "移动存储设备 ");   
   break;   
  case   DRIVE_FIXED:   
   ::AfxMessageBox( "固定硬盘驱动器 ");   
   break;   
  case   DRIVE_REMOTE:   
   ::AfxMessageBox( "这是网络驱动器 ");   
   break;  
  case   DRIVE_CDROM:   
   ::AfxMessageBox( "这是光盘驱动器 ");   
   break;
   
  }
  
  pDriveStrings   +=   szDriveString   +   1;   
  szDriveString   =   strlen(pDriveStrings);   
}   


 

、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

===========================================================================================

映射消息响应函数
ON_WM_DEVICECHANGE(OnDeviceChange)

加入
afx_msg void OnDeviceChange(UINT nEventType, DWORD dwData);


void CGggfDlg::OnDeviceChange(UINT nEventType, DWORD dwData)
{
    if( nEventType ==32768) 
	{
        MessageBox(_T("U盘插入"));
	}

    else if(nEventType ==32772)  
	{
        MessageBox(_T("U盘拔出"));
	}
}


----------------------------------------------------------------------------------------------------------------------------

获取U盘符

    CString str = _T("z:\\");
    for( char ch = 'z'; ch >='c'; ch--)
    {
        str.SetAt(0,ch);
        UINT type = GetDriveType(str);
        if(DRIVE_REMOVABLE == type)
        {
            AfxMessageBox(str);
        }
    }



 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值