Class: Vmopt::DVDOperation
- Inherits:
-
Object
- Object
- Vmopt::DVDOperation
- Defined in:
- lib/vmopt/dvd_operation.rb
Instance Method Summary collapse
-
#close_dvd(str1 = "set cdauto door closed", str2 = "", num1 = 0, num2 = 0) ⇒ Object
参数:无 功能:关闭光驱与弹出光驱对应 返回值:默认.
-
#disable_all_dvd ⇒ Object
参数:无 功能:禁用系统所有的光驱设备 返回值:默认.
-
#disable_index_dvd(str) ⇒ Object
参数:盘符号例如D: 功能:禁用指定盘符的光驱设备 返回值:默认.
-
#eject_dvd(str1 = "set cdauto door open", str2 = "", num1 = 0, num2 = 0) ⇒ Object
参数:无 功能:弹出光驱 返回值:默认.
-
#enable_all_dvd ⇒ Object
参数:无 功能:启用系统所有的光驱设备 返回值:默认.
-
#get_dvd_information ⇒ Object
参数:无 功能:获取光驱的基本信息 返回值:默认.
-
#mount_all_dvd ⇒ Object
参数:无 功能:自动添加或者挂载所有光驱设备 返回值:默认.
-
#read_dvd(str) ⇒ Object
参数:盘符号例如D: 功能:打开光盘里的内容 返回值:默认.
-
#remove_all_dvd ⇒ Object
参数:无 功能:删除或卸载统所有的光驱设备 返回值:默认.
-
#remove_index_dvd(str) ⇒ Object
参数:盘符号例如D: 功能:删除或卸载指定盘符的光驱设备 返回值:默认.
Instance Method Details
#close_dvd(str1 = "set cdauto door closed", str2 = "", num1 = 0, num2 = 0) ⇒ Object
参数:无 功能:关闭光驱与弹出光驱对应 返回值:默认
40 41 42 43 |
# File 'lib/vmopt/dvd_operation.rb', line 40 def close_dvd(str1="set cdauto door closed",str2="",num1=0,num2=0) mci = Win32API.new("winmm.dll","mciSendString",%w(p p i i),"i") mci.call(str1,str2,num1,num2) end |
#disable_all_dvd ⇒ Object
参数:无 功能:禁用系统所有的光驱设备 返回值:默认
50 51 52 |
# File 'lib/vmopt/dvd_operation.rb', line 50 def disable_all_dvd system("devcon.exe disable *DVD* >null 2>&1") end |
#disable_index_dvd(str) ⇒ Object
参数:盘符号例如D: 功能:禁用指定盘符的光驱设备 返回值:默认
59 60 61 62 63 64 65 |
# File 'lib/vmopt/dvd_operation.rb', line 59 def disable_index_dvd(str) colItems = WMI.execquery ("select * from Win32_CDROMDrive where Drive='#{str}'") for colItem in colItems do strID = colItem.DeviceId system("devcon.exe disable @#{strID} >null 2>&1") end end |
#eject_dvd(str1 = "set cdauto door open", str2 = "", num1 = 0, num2 = 0) ⇒ Object
参数:无 功能:弹出光驱 返回值:默认
30 31 32 33 |
# File 'lib/vmopt/dvd_operation.rb', line 30 def eject_dvd(str1="set cdauto door open",str2="",num1=0,num2=0) mci = Win32API.new("winmm.dll","mciSendString",%w(p p i i),"i") mci.call(str1,str2,num1,num2) end |
#enable_all_dvd ⇒ Object
参数:无 功能:启用系统所有的光驱设备 返回值:默认
72 73 74 |
# File 'lib/vmopt/dvd_operation.rb', line 72 def enable_all_dvd system("devcon.exe enable *DVD* >null 2>&1 ") end |
#get_dvd_information ⇒ Object
参数:无 功能:获取光驱的基本信息 返回值:默认
12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/vmopt/dvd_operation.rb', line 12 def get_dvd_information() data_value={} colItems = WMI.execquery ("select * from Win32_CDROMDrive") for colItem in colItems do str={"介质类型"=>colItem.MediaType, "盘符"=> colItem.Drive, "描述信息"=>colItem.Description } data_value["#{colItem.Drive}"]=str end return data_value end |
#mount_all_dvd ⇒ Object
参数:无 功能:自动添加或者挂载所有光驱设备 返回值:默认
103 104 105 |
# File 'lib/vmopt/dvd_operation.rb', line 103 def mount_all_dvd system("devcon.exe rescan >null 2>&1") end |
#read_dvd(str) ⇒ Object
参数:盘符号例如D: 功能:打开光盘里的内容 返回值:默认
112 113 114 115 |
# File 'lib/vmopt/dvd_operation.rb', line 112 def read_dvd(str) #AutoItX3.run("explorer.exe #{str}") system("dir #{str} >null 2>&1") end |
#remove_all_dvd ⇒ Object
参数:无 功能:删除或卸载统所有的光驱设备 返回值:默认
82 83 84 |
# File 'lib/vmopt/dvd_operation.rb', line 82 def remove_all_dvd system("devcon.exe remove *DVD* >null 2>&1") end |
#remove_index_dvd(str) ⇒ Object
参数:盘符号例如D: 功能:删除或卸载指定盘符的光驱设备 返回值:默认
91 92 93 94 95 96 97 |
# File 'lib/vmopt/dvd_operation.rb', line 91 def remove_index_dvd(str) colItems = WMI.execquery ("select * from Win32_CDROMDrive where Drive='#{str}'") for colItem in colItems do strID = colItem.DeviceId system("devcon.exe remove @#{strID} >null 2>&1") end end |