Top-Themen

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, 7843 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
Windows 10
DVD-Laufwerk unter Windows 10 verschwunden
Tipp von LochkartenstanzerWindows 1014 Kommentare

Moin, gerade wieder mal eine der Fälle gehabt, wo das DVD-laufwerk "nicht mehr da" ist. Weder im Gerätemanager noch ...

Exchange Server
Powershell: Konfigurieren der internen und externen URLs von Exchange Server 2013, 2016
Tipp von colinardoExchange Server22 Kommentare

Für all diejenigen unter euch, die sich nicht durch alle Einstellungen für die internen und externen URLs im ECP ...

Mac OS X
MacOS: Sicherheitslücke durch Root-Zugriff selbst schließen
Anleitung von FrankMac OS X8 Kommentare

Eine neue ziemlich heftige Sicherheitslücke in macOS High Sierra 10.13.1 (17B48) macht die Runde. Sie erlaubt unbefugten den Root-Zugriff ...

Batch & Shell
Powershell elevated
Tipp von AnkhMorporkBatch & Shell2 Kommentare

Ein kleiner Tipp am Rande für alle PS-Novizen (ich wars einfach leid): Um eine Konsole mit elevated rights schnell ...

Neue Wissensbeiträge
Viren und Trojaner

Deaktivierter Keylogger in HP Notebooks entdeckt

Information von bitcoin vor 14 StundenViren und Trojaner1 Kommentar

Ein Grund mehr warum man Vorinstallationen der Hersteller immer blank bügeln sollte Der deaktivierte Keylogger findet sich im vorinstallierten ...

Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 17 StundenRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 3 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 4 TagenWebbrowser8 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Heiß diskutierte Inhalte
Batch & Shell
Trusted Sites für alle User auf dem PC einpflegen
Frage von xXTaKuZaXxBatch & Shell12 Kommentare

Aufgabestellung: Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User ...

Voice over IP
Telefonstörung - Ortsrufnummern kein Verbindungsaufbau
Frage von Windows10GegnerVoice over IP10 Kommentare

Hallo, sowohl bei uns als auch beim Opa ist es über VoIP nicht möglich Ortsrufnummern anzurufen. Es kommt nach ...

Vmware
DOS 6.22 in VMWare mit CD-ROM
gelöst Frage von hesperVmware10 Kommentare

Hallo zusammen! Ich hab ein saublödes Problem. Es ist eine VMWare mit DOS 6.22 zu erstellen auf dem ein ...

Cloud-Dienste
PIM als SaaS Nutzungsgebühr
Frage von vanTastCloud-Dienste8 Kommentare

Moin, wir haben uns ein PIM (Product Information Management) nach unseren Ansprüchen für viel Geld als SaaS-Lösung bauen lassen. ...