当前位置:首页 > 编程学习 > VB获取光驱盘符

VB获取光驱盘符

编程学习2007-04-2956650

VB获取光驱盘符

Option Explicit
Private Declare Function GetDriveType Lib "kernel32" Alias "GetDriveTypeA" _
(ByVal nDrive As String) As Long
'GetLogicalDriveStrings-->获取一个字串,其中包含了当前所有逻辑驱动器的根驱动器路径
Private Declare Function GetLogicalDriveStrings Lib "kernel32" Alias "GetLogicalDriveStringsA" _
(ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long
       
Private Const DRIVE_REMOVABLE = 2
Private Const DRIVE_FIXED = 3
Private Const DRIVE_REMOTE = 4
Private Const DRIVE_CDROM = 5
Private Const DRIVE_RAMDISK = 6
       
Private Sub Command1_Click()
    Dim rtn As String
    Dim AllDrives As String
    Dim JustOneDrive As String
    AllDrives = Space$(64) '设置缓冲
    rtn = GetLogicalDriveStrings(Len(AllDrives), AllDrives) '调用函数得到包含所有驱动器的字符串
    AllDrives = Left(AllDrives, rtn)
    Do
        rtn = InStr(AllDrives, Chr(0))
        If rtn Then '若有的话
            JustOneDrive = Left(AllDrives, rtn)
            AllDrives = Mid(AllDrives, rtn + 1, Len(AllDrives))
            rtn = GetDriveType(JustOneDrive) '检查驱动器类型
            If rtn = DRIVE_CDROM Then '是CD-ROM
                Label1.Caption = Left(UCase(JustOneDrive), 2) '给label1
                Exit Do
            End If
        End If
    Loop Until AllDrives = "" Or rtn = DRIVE_CDROM
    Command1.Enabled = False
    If Label1.Caption = "" Then Label1.Caption = "没有发现光驱!"
End Sub


扫描二维码推送至手机访问。

版权声明:本文由海阔天空发布,如需转载请注明出处。

本文链接:https://apull.net/html/20070429182.html

标签: 编程技术VB
分享给朋友:

相关文章

为什么每个程序员都应该学习C语言

为什么每个程序员都应该学习C语言

为什么每个程序员都应该学习C语言 每个程序员在他们的编程生涯中都应该学习C语言,因为它有太多难以忽视的好处了。除了它会给你提供更多的工作机会之外,C语言还会教给你更多的关于计算机的知识。它能给我们提供的裨益,简单列举如下:   1)相比较其他的编程语言(像C++,JAVA),C语言是个低级语言。从总体上来说,低级的编程语言可以让你更好的了解计算机。   2)设备驱动程序和操作系统只能用C语言来编写。现在,你...

VB.NET 用ShellExecuteEx 打开系统文件属性对话框 模块

VB.NET 用ShellExecuteEx 打开系统文件属性对话框 模块

' ' VB.NET 调用系统文件属性对话框模块 ' ' by: Apull ' QQ:374237545 ' http://www.apull.net ' 2007-6-9 ' ' Imports System.Runtime.InteropServices     Mod...

C++实现十进制转换为二进制

C++实现十进制转换为二进制

这个写得有些早了,学习c++是写的。现在看到很多帖子问这个问题,把这个贴上来供大家参考下。/* * FileName: bin.cpp * * 转换十进制为二进制 * * Apull * 2005-12-2 */ #include <iostream> #include <cstdlib> using namespace std; const int size = sizeof(int) *...

VB/VB.net 只允许运行一个实例

VB/VB.net 只允许运行一个实例

VB/VB.net  只允许运行一个实例       by:  Apull  VB中的实现方法VB如何防止程序被重复加载,也就是只允许运行一个实例,一般有2种方法。一,直接用VB提供的APP对象的PrevInstance方法。PrevInstance的返回值为True则说明已经有一个实力在运行。If App.PrevInstance Then Msgbox "已经有一个实例在运行" End if这个...