ort und version von anwndungen



  • hi

    wie kann ich das verzeichnis und die version einer anwendung herausfinden?

    zb excel oder word oä.?

    gruß linus



  • Schau mal nach "FindExecutable"
    Ich weiss aber nicht ganz genau was Du eigentlich willst...
    Vielleicht ist auch WMI und Win32_Product was...



  • linus schrieb:

    hi

    wie kann ich das verzeichnis und die version einer anwendung herausfinden?

    zb excel oder word oä.?

    gruß linus

    Es gäbe die möglichkeit in der Registry danach zu schauen oder halt alternativ per FindFirstFile die platte durchsuchen.
    Könntest aber Theoretisch den Anwender den Pfad angeben lassen.



  • Hallo zusammen,

    ich hab das gleiche Problem.
    Es geht bei mir um COM Server.
    Ich muss über die Registry gehen, da ist der Pfad hinterlegt.
    Nur weiß ich nicht wie man in der Registry nach etwas sucht.
    RegFindKey oder so hab ich nicht gefunden 😞

    Kann mir jemand helfen?

    Grüße RuFF



  • @ Jochen Kalmbach

    Ich bin immer noch der Automatisierung von Excel und Word
    beschäftigt. Das funktioniert auch , nur muß man verschiedene
    Bibliotheken , je nach Version einbinden. Du hattest damals
    auf Deine Version 'Late binding in c++' hingewiesen.
    Ich hab mir das mal angeschaut , aber leider nicht verstanden
    wie das funktioniert. Deshalb wollte ich versuchen vorher
    herauszufinden wo die Anwendungen stehen und welche Version
    installiert ist .



  • RuFFnEcK schrieb:

    Hallo zusammen,

    ich hab das gleiche Problem.
    Es geht bei mir um COM Server.
    Ich muss über die Registry gehen, da ist der Pfad hinterlegt.
    Nur weiß ich nicht wie man in der Registry nach etwas sucht.
    RegFindKey oder so hab ich nicht gefunden 😞

    Kann mir jemand helfen?

    Grüße RuFF

    Vielleicht hilft dir die Funktion CRegKey::EnumKey
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclib/html/_atl_Methods_CRegKey.asp



  • linus schrieb:

    Du hattest damals
    auf Deine Version 'Late binding in c++' hingewiesen.

    Das ist IMHO die einzige Möglichkeit dies mit unterschiedlichen Versionen hinzubekommen!

    linus schrieb:

    Ich hab mir das mal angeschaut , aber leider nicht verstanden
    wie das funktioniert. Deshalb wollte ich versuchen vorher
    herauszufinden wo die Anwendungen stehen und welche Version
    installiert ist .

    Und was soll Dir das helfen??? Wenn Du die tlb einbindest, dann musst Du doch schon zur compilzeit Wissen was auf dem Zielrechner installiert ist!!! Somit kannst Du diesen Ansatz vergessen.

    Hier nochmals der Link:
    http://blog.kalmbachnet.de/?postid=63



  • Also ich hab das mit der Automatisierung in der Literatur
    nachgelesen und einigermaßen kann ich es auch nachvollziehen.
    Aber irgendwie kapier ich das mit dem INVHLP-Code nicht .
    Vielleicht kannst Du mir ja einen Tip geben .
    Ich hab ja nun die Wrapper-Klasse für Excel erstellt mithilfe
    der Typenbibliothek der Excel-Anwendung auf meinem Rechner.
    brauch ich die jetzt nicht mehr oder wie kömmen jetzt die o.g.
    Dateien ins Spiel .

    Lach nicht.. Vielleicht bin ich ein bischen 🤡 🤡. Aber
    bei mir ist der Groschen noch nicht gefallen, aber ich lerne
    noch gerne hinzu ( 😉 eigentlich mit jedem Statement 😉 )



  • Entweder Du machst halt Late-Bindung oder Du verwendest die Wrapper Klassen... das sind zwei verschiedene Dinge (oder enthalten die Wrapper-Klassen irgendwas mit IDispatch? ich glaube mal nein)...


Anmelden zum Antworten