Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Öffnen und Schließen von CD- und DVD-Laufwerken via Powershell ohne externe Tools.

Tipp Entwicklung Batch & Shell

Mitglied: colinardo

colinardo (Level 5) - Jetzt verbinden

17.10.2013, aktualisiert 19:37 Uhr, 7758 Aufrufe, 3 Danke

Eine Powershell-Funktion zum Öffnen und Schließen des CD/DVD-Trays

Diese Funktion ermöglicht es euch ein CD/DVD-Laufwerk mit einem Powershell-Script zu öffnen und zu schließen, ohne dafür Zusatztools verwenden zu müssen. Es nutzt dazu eine Win32 Funktion in der DLL winmm.dll.

Hinweis: Benötigt mindestens PowerShell 2.0.

01.
<# 
02.
--------------------------------------------------------- 
03.
- Function to open and close CD/DVD-Drive by drive letter 
04.
- by @colinardo (http://www.administrator.de) 
05.
--------------------------------------------------------- 
06.
#> 
07.
function initCDROM() { 
08.
    [String]$SourceCode = @" 
09.
Namespace colinardo.cdrom 
10.
    Public Class MyFunctions 
11.
        Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpszCommand As String, ByVal lpszReturnString As String, ByVal cchReturnLength As Long, ByVal hwndCallback As Long) As Long 
12.
 
13.
        Public Shared Function OpenDoor(device As String) As Long 
14.
            Dim cmd As Long = mciSendString("open " & device & " type cdaudio alias CD wait shareable", 0, 0, 0) 
15.
            If cmd <> 0 Then 
16.
                Dim cmd2 As Long = mciSendString("set CD door open", 0, 0, 0) 
17.
                mciSendString("close CD", 0, 0, 0) 
18.
                Return cmd2 
19.
            Else 
20.
                Return cmd 
21.
            End If 
22.
        End Function 
23.
        Public Shared Function CloseDoor(device As String) As Long 
24.
            Dim cmd As Long = mciSendString("open " & device & " type cdaudio alias CD wait shareable", 0, 0, 0) 
25.
            If cmd <> 0 Then 
26.
                Dim cmd2 As Long = mciSendString("set CD door closed", 0, 0, 0) 
27.
                mciSendString("close CD", 0, 0, 0) 
28.
                Return cmd2 
29.
            Else 
30.
                Return cmd 
31.
            End If 
32.
        End Function 
33.
    End Class 
34.
End Namespace 
35.
"@ 
36.
 add-type -TypeDefinition $SourceCode -Language VisualBasic 
37.
38.
 
39.
#Benutzerdefinierten .Net-Code laden (Hinweis: Die Type-Definition dar nur einmal in einer Session geladen werden) 
40.
initCDROM 
41.
 
42.
echo "Öffne das Laufwerk F:" 
43.
#Hiermit öffnet man ein Laufwerk mit dem jeweiligen Laufwerksbuchstaben 
44.
[colinardo.cdrom.MyFunctions]::OpenDoor("F:") 
45.
 
46.
echo "Schließe das Laufwerk F:" 
47.
#Hiermit schließt man ein Laufwerk mit dem jeweiligen Laufwerksbuchstaben 
48.
[colinardo.cdrom.MyFunctions]::CloseDoor("F:")
Kommentare wie man ein Laufwerk öffnet und schließt stehen im Code.

Happy Coding ...

Grüße @colindaro
Ähnliche Inhalte
Vmware
gelöst DVD-Laufwerk für alle VMs bereitstellen (9)

Frage von Synchro zum Thema Vmware ...

Vmware
VMware ESXI 6.0.0 erkennt Host-CD-Laufwerk nicht (3)

Frage von florianza zum Thema Vmware ...

Verschlüsselung & Zertifikate
Externe Laufwerke verschlüsseln (8)

Frage von uridium69 zum Thema Verschlüsselung & Zertifikate ...

Notebook & Zubehör
Windows 10 erkennt Slimtyp DVD Laufwerk nicht (10)

Frage von Hendrik2586 zum Thema Notebook & Zubehör ...

Neue Wissensbeiträge
LAN, WAN, Wireless

WPA-2 hat erste Risse: KRACK

(2)

Information von the-buccaneer zum Thema LAN, WAN, Wireless ...

Hardware

GPD Pocket: Winziger Laptop für Wenig Tipper

(1)

Information von pelzfrucht zum Thema Hardware ...

Windows 10

Microsoft veröffentlicht das "Fall Creators Update

(10)

Information von Penny.Cilin zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Windows Server
gelöst Gruppenrichtlinie greift nicht zu! (23)

Frage von Syosse zum Thema Windows Server ...

Hosting & Housing
Mailserver Software Empfehlungen (20)

Frage von sunics zum Thema Hosting & Housing ...

Windows 7
gelöst Windows 7 Anmeldedomäne festlegen (13)

Frage von flotaut zum Thema Windows 7 ...