Otvorenie a zatvorenie DVD mechaniky.   zodpovězená otázka

VB.NET, WinAPI

Dobrý deň.

Poradil by mi niekto, ako by som mohol z programu otvoriť a zatvoriť DVD mechaniku?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Podarilo sa mi nájsť toto:

Public Class Form1
    Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
    Dim lRet As Long
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        lRet = mciSendString("set CDAudio door open", "returnstring", 127, 0)
    End Sub
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        lRet = mciSendString("set CDAudio door closed", "returnstring", 127, 0)
    End Sub
End Class

nahlásit spamnahlásit spam 5 / 5 odpovědětodpovědět

Toto mi funguje, ale nevedel by mi niekto poradiť, ako spustiť svoj program stlačením tlačidla mechaniky?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Myslíte automatické spuštění programu na CD disku po jeho založení do mechaniky?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Myslím, že tazatel má na mysli odchycení události otevření/zavření mechaniky tak, aby na ní mohl reagovat ve svém programu.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Podívejte se na tohle:

http://www.freevbcode.com/ShowCode.asp?I...

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Ďakujem za link, ale tento program rieši skôr to, či v mechanike niečo je alebo nie. Mne by naozaj viac pmohlo, keby som v progame vedel odchytiť stlačenie tlačidla mechaniky.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Nebo ještě se zkuste podívat na MSDN na Device Management

http://msdn.microsoft.com/en-us/library/...

ten kód jsem nestudoval, ale možná by Vám to mohlo pomoct

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Ďakujem Vám páni za reakcie na moju otázku.

Ak dovolíte, chcel by som Vám vysvetliť o čo ide. Chcem ovládať otváranie a zatváranie CD mechaniky z klávesnice. Program, korý uvádzam nižšie to robí, ale s problémami. S akými, uvádzam pod ním. Táto otázka vlastne ani nepatrí tu. Skôr je pre odborníkov na Windows.

Properties:

Form1:

ControlBox: False

Opacity: 65%

ShowIcon: False

ShowInTaskbar: False

Size: 142; 60

StartPosition: Manual

Text: Mechanika otvorená

TopMost: True

Button1:

Size: 141; 23

Text: Zavrieť

Public Class Form1
    Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
    Dim lRet As Long
    'Otvorí mechaniku
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        lRet = mciSendString("set CDAudio door open", "returnstring", 127, 0)
        'Uloží formulár vpravo dole
        Me.Left = Screen.PrimaryScreen.WorkingArea.Right - Me.Width
        Me.Top = Screen.PrimaryScreen.WorkingArea.Bottom - Me.Height
    End Sub

    'Zavrie mechaniku
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        lRet = mciSendString("set CDAudio door closed", "returnstring", 127, 0)
        Me.Close()
    End Sub
End Class

Takže skompilujem a odkaz na spustenie uložím na pracovnú plochu. Cez vlastností odkazu pridám, aby sa program spúšťal cez klávesovú skratku Ctrl + Alt + M. V podstate, ak otvorím program, tak sa otvorí aj mechanika, ak stlačím Enter, pretože je je tam len jedno tlačítko, ktoré je automaticky vo focus, tak sa zatvorí. Funguje, až na jednú vec. Ak otvorím mechaniku jej tlačídlom, tak zavrieť ju musím tak, že stlačím Ctrl + Alt + M a poton Enter a to sa mi nezdá korektné. Chcel by som, ak stlačím tlačídlo mechaniky, aby sa spustil vyššie uvedený program. Ak by ste vedeli poradiť, tak vám budem vďačný.

nahlásit spamnahlásit spam 2 / 2 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback