Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  CATIA V5 Programmierung
  CATIA Auslastung Busy

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
  
CATIA V5 Grundkurs | Einsteiger - 5 Std. 15 Min 48
  
KISTERS 3DViewStation - Der Schlüssel zur Einsparung von CAD-Lizenzen, eine Pressemitteilung
Autor Thema:  CATIA Auslastung Busy (710 mal gelesen)
nreim1
Mitglied
Konstrukteur


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

Beiträge: 36
Registriert: 18.01.2008

erstellt am: 09. Feb. 2009 09:31    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

Hallo Forengemeinde

Ich habe malwieder eine Frage an euch, gibt es eine Funktion die mir sagt ob Catia noch am Arbeiten ist oder ob es bereit ist für weitere befehle.... ???

Grund:
Ich Steuere CATIA von Aussen Mittels VB.Net an, klappt auch alles sehr gut. Habe nur manchmal ein paar probleme beim übergeben von Werten an diverse Parameter in Catia Parts! Irgendwie werden die werte manchmal nicht übernommen, habe den eindruck das mein Programm manchmal zu schnell arbeitet so das Catia nicht nach kommt. Und überall ein Thread.Sleep() einbauen möchte ich sehr ungern machen..

Wäre euch dankbar für ein paar tipps.

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

RSchulz
Ehrenmitglied V.I.P. h.c.
Head of CAD, Content & Collaboration / IT-Manager



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

Beiträge: 5541
Registriert: 12.04.2007

@Work
Lenovo P510
Xeon E5-1630v4
64GB DDR4
Quadro P2000
256GB PCIe SSD
512GB SSD
SmarTeam V5-6 R2016 Sp04
CATIA V5-6 R2016 Sp05
E3.Series V2019
Altium Designer/Concord 19
Win 10 Pro x64

erstellt am: 09. Feb. 2009 09:49    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 nreim1 10 Unities + Antwort hilfreich

Hallo,
das mit dem Thread.Sleep wäre auch sehr unsauber. Ich weis ja nicht, ob das Makro für mehrere User auf verschiedenen Rechnern gedacht ist, denn sonst hättest du so oder so ein Problem, da die Wartezeit Leistungsabhängig ist. Das Problem ist, dass das Programm in einem eigenen Prozess (sprich CATIA unabhängig) arbeitet und du keinerlei antworten von CATIA bekommst. Du solltest aufjedenfall ein Application.DoEvents in jede Schleife und an jeden Punkt einbauen, an dem du auf eine Antwort wartest. Im Normalfall führt das dazu, dass das Programm auf andere Programme wartet. In wie weit das in Verbindung mit CATIA funktioniert, kann ich dir so nicht sagen.

------------------
MFG
Rick Schulz

Nettiquette (CAD.de)

Konfuzius sprach: "Wer sich das Alte noch einmal vor Augen führt, um das Neue zu verstehen, der kann anderen ein Lehrer sein."

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

nreim1
Mitglied
Konstrukteur


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

Beiträge: 36
Registriert: 18.01.2008

erstellt am: 09. Feb. 2009 10:25    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

Hallo !

Ja Das Programm läuft auf mehreren unterschiedlichen PC`s, desswegen finde ich das mit der Thread.Sleep() sache auch nicht gut.

Also im regelfall ist es so das mein Programm schon auf CATIA Wartet, zum beispiel wenn ich den user auffordere eine selektion in Catia zu machen stoße ich den befehl natürlich aus meinem programm heraus an und das wartet auch solange mit der fortsetzung der Arbeit bis der User etwas selektiert oder den vorgang abgebrochen hat. Von daher besteht schon eine gewisse kommunikation !

Wie meinst du das genau mit dem Application.DoEvents .. Wie würde so eine Abfrage denn aussehen ?
Soll ich dann einfach vor jede abfrage und jedes setzen eines Parameters den befehl Application.DoEvents() setzen ?

Also gibt es keine direkte möglichkeit zu prüfen ob Catia noch beschäftigt ist oder nicht ???


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

RSchulz
Ehrenmitglied V.I.P. h.c.
Head of CAD, Content & Collaboration / IT-Manager



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

Beiträge: 5541
Registriert: 12.04.2007

@Work
Lenovo P510
Xeon E5-1630v4
64GB DDR4
Quadro P2000
256GB PCIe SSD
512GB SSD
SmarTeam V5-6 R2016 Sp04
CATIA V5-6 R2016 Sp05
E3.Series V2019
Altium Designer/Concord 19
Win 10 Pro x64

erstellt am: 09. Feb. 2009 11:27    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 nreim1 10 Unities + Antwort hilfreich

Hallo,
das Application.DoEvents sollte an jede Stelle des Prozesses eingefügt werden, an der es notwendig ist, auf Funktionen oder andere Prozesse zu warten. Hierbei wird die CPU-Priorität für den folgenden Prozess nach unten gesetzt und das Programm gibt so theoretisch die CPU für andere Prozesse frei.

------------------
MFG
Rick Schulz

Nettiquette (CAD.de)

Konfuzius sprach: "Wer sich das Alte noch einmal vor Augen führt, um das Neue zu verstehen, der kann anderen ein Lehrer sein."

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)2025 CAD.de | Impressum | Datenschutz