Ga naar inhoud

[vb6] OCX/DLL controle


anoniem

Aanbevolen berichten

Ik heb een programma met nogal wat references naar DLL- en OCX-bestanden. Als een van deze bestanden ontbreekt, geeft het programma bij het starten al een foutmelding (geen VB-melding, maar afgevangen door een On Error). Ik wil deze melding echter wat specifieker maken (bijv. "MSCOMCTL.OCX ontbreekt of is niet correct geïnstalleerd"). Is het mogelijk om met bijv. een API call uit te vragen of een bepaalde DLL of OCX geregistreerd is binnen Windows en waar (drive en pad), zodat je ook nog kan kijken of het bestand nog wel bestaat met Dir$ of een FSO?
Link naar reactie
Die API-functie ken ik inderdaad ook. Hiermee kan ik de Windows folder uitvragen. Dit is echter niet wat ik wil. Ik wil kijken of een OCX of DLL wel geregistreerd is bij Windows (mogelijk ken je het commando regsvr32.exe waarmee je dat soort bestanden registreert). Vervolgens kan ik dan actie ondernemen: DLL/OCX niet geregistreerd: Geef melding dat DLL/OCX ontbreekt DLL/OCX wel geregistreerd: Kijk of DLL/OCX inderdaad te vinden is op de geregistreerde plaats; zo ja programma executie normaal vervolgen, zo nee geef melding dat DLL/OCX ontbreekt. Hopelijk is dit wat duidelijker.
Link naar reactie
Ik weet niet hoe je kunt zien welke dll/ocx niet is geregistreerd maar je kunt ze wel stuk voor stuk aflopen en ze opnieuw registreren. Kijken of ze er zijn: stringvar = Dir("pad_en_naam", vbNormal) registreren is makkelijk, shell "regsvr32 /s pad_en_bestand", vbNormalFocus Het opnieuw registreren van bestanden kan geen kwaad en met de /s optie ziet de gebruiker alleen maar een flits en klaar is het, geen window of msgbox die zegt dat de registratie gelukt is. Daarna kun je het programma af laten sluiten en opnieuw opstarten
Link naar reactie
[quote:bdd7ad86ea="RubeL"]Ik heb een programma met nogal wat references naar DLL- en OCX-bestanden. Als een van deze bestanden ontbreekt, geeft het programma bij het starten al een foutmelding (geen VB-melding, maar afgevangen door een On Error). Ik wil deze melding echter wat specifieker maken (bijv. "MSCOMCTL.OCX ontbreekt of is niet correct geïnstalleerd"). Is het mogelijk om met bijv. een API call uit te vragen of een bepaalde DLL of OCX geregistreerd is binnen Windows en waar (drive en pad), zodat je ook nog kan kijken of het bestand nog wel bestaat met Dir$ of een FSO?[/quote:bdd7ad86ea] pseudo code: [code:1:bdd7ad86ea] Created = "Creeer ActiveX object" if Created then "OK" else "Er is een probleem. Mogelijk is object x niet geregistreerd en/of aanwezig." endif [/code:1:bdd7ad86ea]of [code:1:bdd7ad86ea] on error goto errhandler obj = createobject("bla.bla.object") exit function errhandler: msgbox("kan activex object niet creeeren") [/code:1:bdd7ad86ea]
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

  • Populaire leden

    Er is nog niemand die deze week reputatie heeft ontvangen.

  • Leden

    Geen leden om te tonen

×
×
  • Nieuwe aanmaken...