Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Firewire Treiber installieren und deinstallieren

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
04.11.2004, 11:27 Uhr
Joda



Hi

Wer kann mir sagen wie ich unter Win 200 und XP einen Firewire Treiber installiert und deinstalliert.
Möchte dies über die sys Datei machen und nicht über die inf Datei.
Habe ein Programm geschrieben das den Treiber deinstalliert.
Geht aber nicht dynamisch sondern man muss das System neu starten.
Nach dem start kommt der PNP Manager und ich kann durch Auswahl der sys Datei den Treiber installieren.
Gibt es eine Möglichkeit den Treiber im gleichen Arbeitsgang deinstallieren und auch gleich zu installieren?
Wenn ja wäre ich über Hilfe sehr dankbar.
Ein Sampler in VC++ 6 oder 7 wäre seht nett.


lg Karli


C++:

int _tmain(int argc, _TCHAR* argv[])
{



//sys Datei z.B mytreiber.sys

    LPSTR ServiceName        = "mytreiber";
    LPSTR ServiceDisplayName = "mytreiber";

    // lokale Variablen vorbereiten
     SC_HANDLE    hSCManager = NULL;
     SC_HANDLE    hService = NULL;    


     // SCM öffnen
     if((hSCManager = OpenSCManager(NULL, NULL,
                      SC_MANAGER_CREATE_SERVICE)) == NULL)
     {
         // Fehler beim Öffnen
        #ifdef _DEBUG
         _tprintf(TEXT("Fehler beim Oeffnen des SCM\n"));
        #endif
         // Zurück
         return -1;
     }


     if (!(hService = OpenService(hSCManager, "mytreiber",
                      STANDARD_RIGHTS_REQUIRED)))
     {
         // Fehler melden
        #ifdef _DEBUG
        _tprintf(TEXT("Oeffnen des Services fehlgeschlagen!"));
        #endif    
         // zurück
         return -1;
     }

     if (!DeleteService(hService))
     {
         // Fehler melden
        #ifdef _DEBUG
         _tprintf(TEXT("Fehler beim Deinstallieren"));
        #endif

         // return
         return -1;
     }

     // Handle zum Service schließen
     CloseServiceHandle(hService);    

     // Handle zum SCM schließen
     CloseServiceHandle(hSCManager);    

     // Alles ok
    #ifdef _DEBUG
     _tprintf(TEXT("Service erfolgreich deinstalliert\n"));
    #endif
    
     //Reboot System
     RebootSystem();

           return 0;


}


Dieser Post wurde am 04.11.2004 um 17:11 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: