Öffnen und Schließen von CD- und DVD-Laufwerken via Powershell ohne externe Tools
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.
Kommentare wie man ein Laufwerk öffnet und schließt stehen im Code.
Happy coding ...
Grüße @colinardo
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.
<#
---------------------------------------------------------
- Function to open and close CD/DVD-Drive by drive letter
- by @colinardo (https://administrator.de)
---------------------------------------------------------
#>
function initCDROM() {
[String]$SourceCode = @"
Namespace colinardo.cdrom
Public Class MyFunctions
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
Public Shared Function OpenDoor(device As String) As Long
Dim cmd As Long = mciSendString("open " & device & " type cdaudio alias CD wait shareable", 0, 0, 0)
If cmd <> 0 Then
Dim cmd2 As Long = mciSendString("set CD door open", 0, 0, 0)
mciSendString("close CD", 0, 0, 0)
Return cmd2
Else
Return cmd
End If
End Function
Public Shared Function CloseDoor(device As String) As Long
Dim cmd As Long = mciSendString("open " & device & " type cdaudio alias CD wait shareable", 0, 0, 0)
If cmd <> 0 Then
Dim cmd2 As Long = mciSendString("set CD door closed", 0, 0, 0)
mciSendString("close CD", 0, 0, 0)
Return cmd2
Else
Return cmd
End If
End Function
End Class
End Namespace
"@
add-type -TypeDefinition $SourceCode -Language VisualBasic
}
#Benutzerdefinierten .Net-Code laden (Hinweis: Die Type-Definition dar nur einmal in einer Session geladen werden)
initCDROM
echo "Öffne das Laufwerk F:"
#Hiermit öffnet man ein Laufwerk mit dem jeweiligen Laufwerksbuchstaben
[colinardo.cdrom.MyFunctions]::OpenDoor("F:")
echo "Schließe das Laufwerk F:"
#Hiermit schließt man ein Laufwerk mit dem jeweiligen Laufwerksbuchstaben
[colinardo.cdrom.MyFunctions]::CloseDoor("F:")
Happy coding ...
Grüße @colinardo
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 219676
Url: https://administrator.de/knowledge/oeffnen-und-schliessen-von-cd-und-dvd-laufwerken-via-powershell-ohne-externe-tools-219676.html
Ausgedruckt am: 24.12.2024 um 12:12 Uhr