Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor VBA
  VB Add-In auf mehreren Clients / PCs ausführen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  VB Add-In auf mehreren Clients / PCs ausführen (2736 mal gelesen)
mranderson
Mitglied
Entwicklungsingenieur Robotik


Sehen Sie sich das Profil von mranderson an!   Senden Sie eine Private Message an mranderson  Schreiben Sie einen Gästebucheintrag für mranderson

Beiträge: 70
Registriert: 25.04.2006

IV: Autodesk Inventor 9
VB: Visual Basic 6.0
OS: Microsoft Windows 2000 Professional SP 4
CPU: Intel Xeon 1,7 GHz
Arbeitsspeicher: 1 GB

erstellt am: 04. Mai. 2006 16:10    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Einen schönen guten Abend allerseits!

Nachdem ich jetzt endlich mein Add-In fertiggestellt habe und einwandfrei auf dem Entwicklungs-PC läuft, wollte ich das Add-In auf einen anderen Computer übertragen (.dll, .reg, .ico-Dateien). Dort habe ich zuerst die .reg-Datei ausgeführt und dann Inventor gestartet. Doch leider steht im Zusatzmodul-Manager bei meinem Add-In "nicht geladen" und ich kann diesesn Zustand auch nicht ändern.

Woran liegt das bzw. was muss ich machen, damit mein Add-In auf jedem Rechner installiert und verwendet werden kann?

Bin für jede Hilfe dankbar!

Dann noch einen schönen Feierabend!

Grüße

MrAnderson alias René

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

daywa1k3r
Moderator
Softwareentwickler




Sehen Sie sich das Profil von daywa1k3r an!   Senden Sie eine Private Message an daywa1k3r  Schreiben Sie einen Gästebucheintrag für daywa1k3r

Beiträge: 3497
Registriert: 01.08.2002

Alienware m17x, Win7, Inventor2012

erstellt am: 04. Mai. 2006 16:26    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mranderson 10 Unities + Antwort hilfreich

Mit regsvr32 die dll registrieren.

------------------
Grüße daywa1k3r

FX64 Software Solutions

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

PaulSchuepbach
Moderator
Programmierer




Sehen Sie sich das Profil von PaulSchuepbach an!   Senden Sie eine Private Message an PaulSchuepbach  Schreiben Sie einen Gästebucheintrag für PaulSchuepbach

Beiträge: 1005
Registriert: 01.10.2003

erstellt am: 04. Mai. 2006 16:34    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mranderson 10 Unities + Antwort hilfreich

Hallo René,

hast Du Deine dll mit VB6 prgrammiert ? Falls ja, dann benutz den 'Paket- und Weitergabeassistent' in der VB6 Installation. Da weden alle nötigen dll, ocx, usw. mitgepackt.
ACHTUNG: wenn Du eion Setup-Paket erstellst, dann entferne den Haken bei 'RxInventor.tlb' - da diese sonst in das Win-Dir kopiert und registriert wird. Da auf dem Rechner aber Inventor ja schon läuft, brauchst Du die nicht bzw. wenn die dabei ist und Deine Applikation wieder deinstalliert wird, gehen andere AddOn's (und dazu gehört einiges von IV-Standard) nicht mehr... Deine Kollegen und der SysAdmin würden Dich dafür an die Wand nageln...


Wenn Du eion Setup-Paket erstellt hast, dann nur noch auf den anderen Clients ausführen.
Wenn Dein AddIN nicht geladen wird, kann es folgende Ursachen haben:
- reg- file falsch
- irgend eine Datei (z.B. Icon) fehlt und dann stürzt Deine Applikation beim laden schon ab

Grüsse,

Paul
www.morecam.ch
www.thinkcad.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

rtend12
Mitglied
Dipl.-Ing. (FH) Maschinenbau / Konstrukteur


Sehen Sie sich das Profil von rtend12 an!   Senden Sie eine Private Message an rtend12  Schreiben Sie einen Gästebucheintrag für rtend12

Beiträge: 436
Registriert: 21.07.2004

Catia V5 (R16SP5, B18SP5)
VB.Net 2003

erstellt am: 04. Mai. 2006 21:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mranderson 10 Unities + Antwort hilfreich

Hallo,

für ein .NET-AddIn solltest du die dll mit regasm registrieren und dabei den Schalter Codebase setzen. Dadurch wird der Registry der Ort deiner dll hinzugefügt.

Gruß
Reinhard

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mranderson
Mitglied
Entwicklungsingenieur Robotik


Sehen Sie sich das Profil von mranderson an!   Senden Sie eine Private Message an mranderson  Schreiben Sie einen Gästebucheintrag für mranderson

Beiträge: 70
Registriert: 25.04.2006

IV: Autodesk Inventor 9
VB: Visual Basic 6.0
OS: Microsoft Windows 2000 Professional SP 4
CPU: Intel Xeon 1,7 GHz
Arbeitsspeicher: 1 GB

erstellt am: 05. Mai. 2006 11:19    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Guten Morgen!

Vielen Danke für den wichtigen Hinweis Paul!

Habe mir schon irgendwie gedacht, dass ich irgendwie ein Setup erstellen muss. Allerdings habe ich nur im Visual Basic 6.0 selbst gesucht, habe dort aber nichts gefunden. Durch deinen Beitrag bin ich auf die Idee gekommen, im Startmenü nachzuschauen ... und tatsächlich, da war das Packprogramms.

Habe es auch schon ausprobiert ... funktioniert einwandfrei, nach ein paar kleineren Schwierigkeiten. Danke für den Hinweis mit der RxInventor.tlb. Ich glaube ich wäre echt ein toter Mann gewesen.

Nochmal eine Frage zu dem regsvr32:
Was hat es damit auf sich? Funktioniert das genauso?

Aber insgesamt muss ich feststellen, dass Add-Ins weitaus komplizierter zu Programmieren, zu Debuggen und Handzuhaben sind als ganz normele Makros, die global abgelegt sind, von jedem Rechner aus einfach verändert, gedebuggt und angewendet werden können. Nur bei dieser Aufgabe habe ich eine MSFlexGrid gebraucht, die scheinbar unter Makros nicht läuft.

Allerdings habe ich eine ziemlich gute Möglichkeit gefunden, doch anständig debuggen zu können. Ich habe nämlich einfach den kompletten bis dahin programmierten Code des Add-Ins in ein einfaches Standard-EXE-Projekt kopiert. Diese hat nach meiner bisherigen Erfahrung bei geöffnetem Inventor die gleiche Funktionalität wie die Add-In-DLL, nur dass síe sich wie gewohnt debuggen lässt und nicht gleich der Inventor abstürzt und bei jedem mal DLL-Kompilieren neugestartet werden muss.

Also dann noch einen schönen Tag!

Grüße

MrAnderson alias René

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

PaulSchuepbach
Moderator
Programmierer




Sehen Sie sich das Profil von PaulSchuepbach an!   Senden Sie eine Private Message an PaulSchuepbach  Schreiben Sie einen Gästebucheintrag für PaulSchuepbach

Beiträge: 1005
Registriert: 01.10.2003

erstellt am: 05. Mai. 2006 11:46    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mranderson 10 Unities + Antwort hilfreich

Hallo Röne,

schön, wenn's Dir geholfen hat.

Der regsvr32 registriert die Datei (dll, ocx, ...) auf dem Betriebssystem, damit Win dann auch weiss, wo das Ding liegt. Deshalb sollte man dll's (dll = dort liegen lassen) nicht versschieben. Muss doch verschoben werden, ist eine Neuregistrierung notwendig.

Dazu ein DOS-Fenster öffnen, in das Verzeichnis wechseln, in der die zu registrierende Komponente liegt 'regsvr32.exe irgendeineDLL.dll' (wobei irgendeineDLL für die zu registrierende Komponenten steht) eingeben - Enter drüccken.
Windows 'weiss' jetzt wieder, wo die dll zu finden ist.

Das mit dem StandardEXE-Projekt mach ich genauso. Wenn alles mal läuft, kopier ich alles in ein dll-Projekt. Ist wesentlich einfacher...


Grüsse,

Paul
www.morecam.ch
www.thinkcad.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

daywa1k3r
Moderator
Softwareentwickler




Sehen Sie sich das Profil von daywa1k3r an!   Senden Sie eine Private Message an daywa1k3r  Schreiben Sie einen Gästebucheintrag für daywa1k3r

Beiträge: 3497
Registriert: 01.08.2002

Alienware m17x, Win7, Inventor2012

erstellt am: 05. Mai. 2006 12:41    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mranderson 10 Unities + Antwort hilfreich

Zitat:
...Nochmal eine Frage zu dem regsvr32:
Was hat es damit auf sich? Funktioniert das genauso?...

Hi René,

mach dir eine Textdatei und speichere die unter z.B. reg.bat. Schreib da rein:

regsvr32 deine.dll
deine.reg /s

Wenn du die jetzt ausführst (der Speicherort für alle Datei muss der gleiche sein, ansonsten musst du die absolute Pfade rein schreiben) wird deine dll registriert und deine Regdatei (in silent mode) ausgeführt.

Wenn du an die Grenzen von dem Weitergabeassistenten stößt, schau dir mal den „Inno“ Setup Installer mal an. Ist Freeware und eine alternative zu InstallShield (oder ähnliches). Ist sehr einfach zu bedienen, multisprachig, Registrybearbeitung, … Halt alles was ein Setup Installer so braucht.


------------------
Grüße daywa1k3r

FX64 Software Solutions

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

PaulSchuepbach
Moderator
Programmierer




Sehen Sie sich das Profil von PaulSchuepbach an!   Senden Sie eine Private Message an PaulSchuepbach  Schreiben Sie einen Gästebucheintrag für PaulSchuepbach

Beiträge: 1005
Registriert: 01.10.2003

erstellt am: 05. Mai. 2006 12:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mranderson 10 Unities + Antwort hilfreich

Hallo,

100% Zustimmung an Igor - ich benutze auch InnoSetup. Wenn Du allerdings Anfänger bist, dann benutz den Weitergabeassistenten. Schau Dir die einzelnen Formblätter gut an - dann wirst Du sehen, was alles mit auf den Zielrechner mitinstalliert werden muss, da der Assistent alle Abhängigkeiten selber findet. Eigene Dateien wie Icon's, reg-fiel, usw. musst Du allerdings manuell hinzufügen.

reg-file für Dein AddIn: wenn Du das reg-file mit in's Setup-Paket aufnimmst, dann fragt der Assistent, ob er die Datei kopieren/ausführen soll: Wenn Du 'ausführen' mit 'Ja' beantwortest, wird Deine dll registriert, bzw. Dein reg-file ausgeführt und die Registry Einträge geschrieben.

InnoSetup beietet - wie Igor schon schreibt - viele Möglichkeiten, die der Weitergabeassistent nicht hat - allerdings muss Du da schon selber wissen, was Du alles mit verteilen musst.


Grüsse,

Paul

www.morecam.ch
www.thinkcad.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mranderson
Mitglied
Entwicklungsingenieur Robotik


Sehen Sie sich das Profil von mranderson an!   Senden Sie eine Private Message an mranderson  Schreiben Sie einen Gästebucheintrag für mranderson

Beiträge: 70
Registriert: 25.04.2006

IV: Autodesk Inventor 9
VB: Visual Basic 6.0
OS: Microsoft Windows 2000 Professional SP 4
CPU: Intel Xeon 1,7 GHz
Arbeitsspeicher: 1 GB

erstellt am: 05. Mai. 2006 15:40    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke danke für die Erklärungen.

Habe es aber schon heute morgen auf mehreren Rechnern vollständig zum laufen bekommen, samt .ico- und .txt-Dateien, die ich für mein Add-In brauche. Das mit der .reg-File hab ich auch so gemacht, dass er die Einträge in die Registry schreibt aber die Datei nicht kopiert.

Wenn ich das richtig verstanden habe, ist das ausführen der regsvr32 genau das gleiche wie bei dem Setup meines Add-Ins passiert, oder kann ich das nur verwenden, wenn ich die dll nach der Installation doch woanders hin haben möchte? Weil bei der Installation bzw. beim Packen des Setups vorher werden ja lauter andere VB-Dateien mitgepackt, die beim ausführen dieses regsvr32-Befehls nicht erstellt, werden. Mir ist das noch nicht so ganz klar. Wann kann ich denn ausschließlich diesen Befehl verwenden, und wann  muss ich das Setup erstellen?

Welche Vorteile hat denn dieses InnoSetup gegenüber dem Standard-Packprogrmam von Visual Basic?

Aber auf jeden Fall schonmal vielen Dank für eure Hilfe!

Schönes Wochenende!

Grüße

MrAnderson alias René

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

daywa1k3r
Moderator
Softwareentwickler




Sehen Sie sich das Profil von daywa1k3r an!   Senden Sie eine Private Message an daywa1k3r  Schreiben Sie einen Gästebucheintrag für daywa1k3r

Beiträge: 3497
Registriert: 01.08.2002

Alienware m17x, Win7, Inventor2012

erstellt am: 08. Mai. 2006 09:48    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mranderson 10 Unities + Antwort hilfreich

Hallo René,

wenn du das auf allen Rechnern zum Laufen gebracht hast, dann hast du es schon einigermaßen begriffen. Und was du verwendest, um deine Anwendung zu installieren, hängt davon ab, wie weit die verbreitet werden soll. Programmierst du deine Programme für dich selbst um deine Produktivität zu steigern, brauchst du gar kein Setup, denn irgendwie bringst du das zum Laufen. Bist du in einer Konstruktionsfirma „Der Programmierer“ und du programmierst nur für deine Kollegen, reicht es zu verstehen, wie sich eine dll innerhalb des Betriebssytems verhält, und somit zu begreifen wie regsvr32 bzw. der Weitergabeassistent von Visual Studio funktioniert. Willst du aber deine Anwendungen professionell betreiben, dann musst du dir einen professionelles Setup Programm aneignen. Denn dann musst du im Voraus denken... Was ist z.B. wenn ich eine neue Version erstelle, und die weltweit installiert werden soll? Was passiert, wenn der Benutzer die Anwendung deinstalliert? Welche Dateien bzw. Reg. Einträge werden gelöscht? Und was muss mit der neuen Version ersetzt werden? Das sind nur ein paar Fragen von vielen, die du berücksichtigen musst, wenn du es professionell betreiben willst. Und für solchen Sachen brauchst du einfach ein professionelles Setup Programm. Ich benutze Inno. Scripten muss man da mit Pascal, aber es ist sehr viel möglich.

------------------
Grüße daywa1k3r

FX64 Software Solutions

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mranderson
Mitglied
Entwicklungsingenieur Robotik


Sehen Sie sich das Profil von mranderson an!   Senden Sie eine Private Message an mranderson  Schreiben Sie einen Gästebucheintrag für mranderson

Beiträge: 70
Registriert: 25.04.2006

IV: Autodesk Inventor 9
VB: Visual Basic 6.0
OS: Microsoft Windows 2000 Professional SP 4
CPU: Intel Xeon 1,7 GHz
Arbeitsspeicher: 1 GB

erstellt am: 08. Mai. 2006 13:22    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke daywa1k3r,

dann gehöre ich wohl zu der zweiten Kathegorie, da ich Programme für meine Kollegen zur schnelleren Projektierung schreibe, aber nicht an Kunden vertrieben werden.

So, dann noch einen schönen Sonn(en)tag. ;-)

Grüße

MrAnderson alias René

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

chinda
Mitglied
Dipl.-Ing. (FH) Maschinenbau


Sehen Sie sich das Profil von chinda an!   Senden Sie eine Private Message an chinda  Schreiben Sie einen Gästebucheintrag für chinda

Beiträge: 24
Registriert: 09.08.2006

erstellt am: 13. Sep. 2006 08:42    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mranderson 10 Unities + Antwort hilfreich

Hallo!

Ich bin auf diesen Beitrag gestossen und dachte mir, dass dies etwas auch mit MEINEM Problem zu tun haben könnte!

Mein Problem ist folgendes:

Möchte in AIP11 eine Belastungsanalyse eines Bauteils durchführen. Nach dem Festlegen aller Parameter und Randbedingungen betätige ich den Button "Belastungsanalyse - Aktualisierung". Es erscheint 1-2 mal die Sanduhr am Mauszeiger, sonst tut sich nix. Eine Belastungsanalyse wurde garnicht durchgeführt. Überprüfe ich die Zusatzmodule (Extras - Zusatzmodule) sehe ich bei "Workbench AIP 11.0" - "Start/Nicht geladen", obwohl bei einem Start des AIP das Zusatzmodul gestartet werden sollte. Starte ich den Dienst manuell steht dann auch "Start/Geladen". Nach dem Schließen des Fensters mit OK prüfe ich, ob der Dienst auch wirklich geladen wurde und gehe nochmal ins Zusatzmodule-Fenster. Wieder steht dort "Start/Nicht geladen". Eine Belastungsanalyse-Aktualisierung ist immernoch nicht möglich!!

Habe schon alles versucht! Komme nicht weiter. Reparatur des AIP hat auch nicht geholfen! Komplettes Neuaufspielen auch nicht.

Könnte es vielleicht sein, dass Windows die zum entsprechenden Zusatzmodul zugehörige .dll nicht findet und deshalb das Modul nicht wirklich starten kann??

Wie kann ich das checken??

CUSee You
chinda.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz