[vb6 sp5] Check of Excel geïnstalleerd is

Pagina: 1
Acties:

  • DPLuS
  • Registratie: April 2000
  • Niet online
Ik wil in mijn app graag controloren of excel geïnstalleerd is op de pc van de gebruiker.
Ik gebruik nu de volgende code:

Visual Basic:
1
2
3
4
5
6
7
8
9
10
on error GoTo ErrorHandler

dim objExcel as object
set objExcel = CreateObject("Excel.Application")

exit sub

ErrorHandler:

msgbox "Excel not installed!"


Het probleem van deze code is dat eerst een instantie van Excel opgestart wordt, maar dat hoeft in dit stadium van het programma helemaal niet.
Is er misschien een snellere manier om uit te vinden of Excel geïnstalleerd is?

  • Tukk
  • Registratie: Januari 2002
  • Laatst online: 12:56

Tukk

De α-man met het ẞ-brein

* Tukk weet het niet zeker
Maar twee dingen die je kan proberen:
  • Je kan early binding gebruiken
    code:
    1
    
       dim objExcel as Excel

    Mischien kun je die foutmelding al afvangen, dan is excel nog niet gestart
  • Je kan in de registry kijken of de entry "excel.application" aanwezig is op de juiste plek. Zo niet, dan is excel niet geinstalleerd

[ Voor 12% gewijzigd door Tukk op 30-12-2003 19:35 ]

Q: How many geeks does it take to ruin a joke? A: You mean nerd, not geek. And not joke, but riddle. Proceed.


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Tukk schreef op 30 december 2003 @ 19:33:
* Tukk weet het niet zeker
Maar twee dingen die je kan proberen:
  • Je kan early binding gebruiken
    code:
    1
    
       dim objExcel as Excel

    Mischien kun je die foutmelding al afvangen, dan is excel nog niet gestart
  • Je kan in de registry kijken of de entry "excel.application" aanwezig is op de juiste plek. Zo niet, dan is excel niet geinstalleerd
Die eerste optie zou ik niet voor gaan, is erg moeilijk af te vangen...
Die tweede optie lijkt me beterz.... ;)

[ Voor 3% gewijzigd door RobIII op 31-12-2003 02:02 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 12-05 22:23

curry684

left part of the evil twins

HKLM/Software/Microsoft/Office/<versie>/Excel/InstallRoot wijst indien geinstalleerd naar de dir, anders leeg.

Voor <versie> moet je de correcte string invullen: "11.0" voor Office 2003, "10.0" voor OfficeXP, "9.0" voor 2000, "8.0" voor 97. Of je loopt er gewoon overheen en zoekt naar Excel/InstallRoot :)

Dit had je natuurlijk met 5 seconden RegEdit hobbywerk ook zelf kunnen vinden trouwens :z

[ Voor 3% gewijzigd door curry684 op 31-12-2003 02:35 ]

Professionele website nodig?