Announcement

Collapse
No announcement yet.

Prüfen ob PCMCIA Card in Slot steckt mittels WMI

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Prüfen ob PCMCIA Card in Slot steckt mittels WMI

    Guten Morgen @all

    Ich versuche gerade mittels WMI (Danke für den Tip) zu testen ob sich eine Bestimmte PCMCIA Card im Laptop befindet. Sobald sie installiert ist steht sie ja unter der jeweiligen Rubrik im Hardwaremanager den auszulesen stellt jetzt kein Problem mehr da. Mittels dem Programm Scriptomatic lassen sich auch ganz schnell Scripts in WQL erstellen und prima in Delphi einbinden. Nur leider finde ich keinen Anhaltspunkt wie und wo ich die PCMCIA Card testen kann ob sie im Slot steckt. Ich möchte bereits vor einer Treiberinstallation bzw. gleich nach dem "Beep" wenn ich die Karte einschiebe wissen ob und welche Karte im Slot steckt.

    Mit 'SELECT * WIN32_PCMCIAController' bekomme ich es nicht heraus dort habe ich kein Eintrag gefunden der mir sagt ob Slot 1 oder 2 eine Card mit dem Namen xxx steckt.

    function TTest.IsPCMCIACardInSlot: Boolean;
    var
    aSrv : ISWbemServices;
    aObjSet : ISWbemObjectSet;
    vNVS : OleVariant;
    aNVSDummy : IDispatch;
    pEnum : IEnumVARIANT;
    vOut : OleVariant;
    dwRetrieved : LongWord;
    hRes : HResult;
    vValue : OleVariant;
    SWbemLocator1 : TSWbemLocator;

    begin
    SWbemLocator1 := TSWbemLocator.Create(NIL);
    aSrv := SWbemLocator1.ConnectServer('','root\CIMV2','','', '','',0,vNVS);
    aObjSet := aSrv.ExecQuery('SELECT* ,??? ',
    'WQL', 0, aNVSDummy);
    pEnum := aObjSet.Get__NewEnum as IEnumVARIANT;

    while (TRUE) do
    begin
    hRes := pEnum.Next(1, vOut, dwRetrieved);

    if hRes <> S_OK then
    Break;
    // Code ...

    end;
    end;

    Mit freundlichen Grüssen
    Jan Ohlmann

  • #2
    Hallo,

    die Klasse <b>Win32_SystemSlot</b> mit der Eigenschaft <b>ConnectorType</b> sollte weiterhelfen. Windows löst die Botschaft <b>WM_DEVICECHANGE</b> aus, wenn sich etwas an der Hardware-Bestückung tut

    Comment


    • #3
      Ich möchte so etwas änliches machen.

      Ich mmöchte ein PCMCIA-Modul welches sich im Schat steckt abmelden und reseten ohne dies aus und einstecken zu müssen.

      Hintergrund ist das ich mit dem Modul komunizieren will was auch geht nur habe ich einen solchen Bug das das Modul abschmiert und ich es jedesmal aus und einstecken muss. Da das den Steckkontakten sicher nicht gut tut wollte ich dies als elegante Lösung Programieren.

      Gedankengang :
      Wie im P&P-Manager das Modul "entfernen" und dann entweder die versorgungsspannung im PCMCIA-Controller aus und einschalten oder die Reset-Leitung kurz aus/an schalten.

      Sowas müsste doch zu machen sein aber selbst nach endlosem googeln habe ich dazu nichts gefunden.

      Marti

      Comment

      Working...
      X