Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  E3.series
  Schleife VBScript

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
Autor Thema:  Schleife VBScript (1755 mal gelesen)
Daudi2010
Mitglied



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

Beiträge: 52
Registriert: 16.05.2014

E3.Series 2014

erstellt am: 16. Okt. 2014 10:00    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 zusammen,

Ich habe per Skript alle Bauteile auf meine Plan gefunden.
Nun möchte ich nur die Bauteile -I1 bis -In per Schleife durchlaufen und ihre Position speichern.

Kann mir jemand sagen wie ich das hinbekomme.

Ich kann mir nicht ganz vorstellen wie ich das z.B. mit einer For-Schleife realisieren soll.
Meine Lösung ist noch recht unschön.

Bis jetzt mache ich es so:

Prj.GetAllDeviceIds devIds      'alle Bauteile auf dem Plan
for d = 1 to Ubound(devIds)
Dev.SetId devIds(d)

If dev.getname = "-I1" Then  ' Gehe jedes Bauteil mit IF durch
                             

End If


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

RSchulz
Moderator²
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: 16. Okt. 2014 10:11    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 Daudi2010 10 Unities + Antwort hilfreich

Hallo,

versuch es mal so...

Code:

Prj.GetAllDeviceIds devIds       'alle Bauteile auf dem Plan

for each devId in DevIds
    Dev.SetId devId
    strDevName = dev.getname

    If instr(strDevName,"-I") = 1 Then   ' Gehe jedes Bauteil mit IF durch
        msgbox "Ich bin ein gefundenes Bauteil " & strDevName
    End If
next


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

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

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

Daudi2010
Mitglied



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

Beiträge: 52
Registriert: 16.05.2014

E3.Series 2014

erstellt am: 16. Okt. 2014 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

Cool vielen Dank.

Das funktioniert so erstmal.

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

Daudi2010
Mitglied



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

Beiträge: 52
Registriert: 16.05.2014

E3.Series 2014

erstellt am: 16. Okt. 2014 10: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

Ist es auch möglich nun von den Bauteilen die Position in einem Array zu speichern?
Also am besten Name mit der dazu gehörigen Position im Array speichern

[Diese Nachricht wurde von Daudi2010 am 16. Okt. 2014 editiert.]

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

RSchulz
Moderator²
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: 16. Okt. 2014 10:45    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 Daudi2010 10 Unities + Antwort hilfreich

Ja klar geht das, da geht zumindest einiges. Im .Net würde ich das allerdings per kaskadiertem Dictionary lösen. Das geht in VBScript allerdings leider nicht...

Was genau meinst du übrigens mit Position? Die Position des Symbols auf dem Blatt? Wenn ja, dann musst erstmal alle relevanten Bauteile auslesen und in ein Array schreiben. Danach alle Symbole (Blatt oder Projekt?) auslesen und prüfen, ob das Symbol zu einem deiner Bauteile gehört, wenn ja, dann davon die Position mit dem entsprechenden Bauteilnamen und evtl weiteren Informationen abspeichern. Das kann ich dir aber nicht mal eben alles blind bzw. ohne Musterbeispiel schreiben. Das ist sicherlich kein Akt, aber mal eben so auch nicht gemacht. Was genau hast du denn vor? ...denn das wäre schon wichtig zu wissen, wie die Daten zur Verfügung stehen sollen.

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

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

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

Daudi2010
Mitglied



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

Beiträge: 52
Registriert: 16.05.2014

E3.Series 2014

erstellt am: 16. Okt. 2014 10: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

Also die -I1 bis -In Bauteile sollen alle im Array mit ihrer Position (x,y Werte auf dem Blatt, Symbolposition auf dem Blatt.) gespeichert werden damit an ihre Position falls nötig andere Bauteile/Symbole gesetzt werden können.

So, dass man dann im Array nachschauen kann wo ein gewisses Bauteil auf dem Blatt plaziert war um dort dann ein anderes hinzusetzen. 

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

RSchulz
Moderator²
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: 16. Okt. 2014 11:14    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 Daudi2010 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Daudi2010:
So, dass man dann im Array nachschauen kann wo ein gewisses Bauteil auf dem Blatt plaziert war um dort dann ein anderes hinzusetzen. 

Da bist du aber fehlgeleitet. Das Objektmodell von E3 sieht vor, dass nicht das Bauteil platziert ist, sondern das Symbol. Das Symbol wiederum referenziert dann zum Bauteil. Demnach musst du die Symbole abfragen.

Als was soll die Liste denn gespeichert werden? Oder geht das Programm dann entsprechend weiter?

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

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

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

Daudi2010
Mitglied



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

Beiträge: 52
Registriert: 16.05.2014

E3.Series 2014

erstellt am: 16. Okt. 2014 11: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


Eingange.PNG

 
Also Anbei hab ich nun mal ein Bild. Da sieht man die Eingänge ED-Flex1 bis ED-Flex6.

Oben sieht man dann die Symbole(Bauteile?) -I1 bis -I6.

Nun soll die Position mit Namen von -I1 bis -I6 in einem Array gespeichert werden. Dann soll der Benutzer auswählen können ob er die Informationseingabe Manuell oder per XML Datei macht. Danach öffnet sich ein Tree in dem man entweder nach XML Eingabe kontrollieren kann ob alles stimmt oder manuell anklicken kann an welchem Eingang denn welches Bauteil/Symbol gesetzt wird.

Bis jetzt habe ich ja nur die Bauteilnamen komm ich von denen auf die Symbole damit ich die austauschen kann ?

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

RSchulz
Moderator²
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: 16. Okt. 2014 13: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 Nur für Daudi2010 10 Unities + Antwort hilfreich

Hallo,

mehr kann ich nun wirklich nicht für dich tun...

Code:

Dim E3Sht, E3Dev, E3Sym

Dim dicSymbols, liSymbols
Dim intSymIds(), intSymId, intDevId, intConId, intSymbolKeys
Dim strDevName, strSymName, strSymRot, strSymX, strSymY, strSymGrid
Dim arrTest, strDevNameTest, strSymRotTest, strSymXTest, strSymYTest, strSymGridTest


Set E3Prj = WScript.CreateJobObject
Set E3Sht = E3Prj.CreateSheetObject
Set E3Dev = E3Prj.CreateDeviceObject
Set E3Sym = E3Prj.CreateSymbolObject

Set dicSymbols = CreateObject("Scripting.Dictionary")
Set liSymbols = CreateObject("System.Collections.ArrayList")

E3Sht.SetId(E3Prj.GetActiveSheetId)
E3Sht.GetSymbolIds(intSymIds)

'prüfe alle Symbole auf die Zugehörigkeit eine Bauteils mit -I
for each intSymId in intSymIds
    E3Dev.SetId intSymId
    strDevName = E3Dev.getname
    If instr(strDevName,"-I") = 1 Then
        liSymbols.Add intSymId                        'erstelle Liste mit entsprechenden Symbolid´s
    End If
next

'lese Positionen etc. von jedem Symbol
for each intSymId in liSymbols
    E3Sym.SetID intSymId
    E3Sym.GetSchemaLocation strSymX, strSymY, strSymGrid
    strSymRot = E3Sym.GetRotation
    Dim Arr
    Arr = Array(strSymX,strSymY,strSymRot,strSymGrid)
    dicSymbols.add intSymId, Arr                        'erstelle Dictionary mit entsprechenden Daten
next

'Ausgabe der Daten in das Infofenster im E3
intSymbolKeys = dicSymbols.Keys()
for each intSymId in intSymbolKeys
    arrTest = dicSymbols.Item(intSymId)
    E3Dev.SetId intSymId
    strDevNameTest = E3Dev.getname
    WScript.PutMessage strDevNameTest
    strSymXTest = arrTest(0)
    WScript.PutMessage strSymXTest
    strSymYTest = arrTest(1)
    WScript.PutMessage strSymYTest
    strSymRotTest = arrTest(2)
    WScript.PutMessage strSymRotTest
    strSymGridTest = arrTest(3)
    WScript.PutMessage strSymGridTest
next


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

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

[Diese Nachricht wurde von RSchulz am 16. Okt. 2014 editiert.]

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

Daudi2010
Mitglied



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

Beiträge: 52
Registriert: 16.05.2014

E3.Series 2014

erstellt am: 16. Okt. 2014 13: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

Oh vielen Dank so viel hab ich jetzt auch gar nicht erwartet ich wäre schon über Tipps dankbar gewesen.

Leider bekomme ich aber eine Fehlermeldung:

Laufzeitfehler in Microsoft VBScript: Das Objekt unterstützt diese Eigenschaft oder Methode nicht.: 'WScript.CreateJobObject'

Ah ok wenn ich es direkt im E3 starte funktioniert es!

Danke

[Diese Nachricht wurde von Daudi2010 am 16. Okt. 2014 editiert.]

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

RSchulz
Moderator²
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: 16. Okt. 2014 13: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 Daudi2010 10 Unities + Antwort hilfreich

WScript ist automatisch die E3-Applikation, solange das Script aus dem E3 heraus gestartet wird.

Sprich du musst das quasy entweder als Menuitem oder als Symbolleistenitem einbinden und aus der aktiven Session starten oder eben so erweitern, dass es für deinen Aufruf passt. Wie startest du das denn?

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

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

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

Daudi2010
Mitglied



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

Beiträge: 52
Registriert: 16.05.2014

E3.Series 2014

erstellt am: 16. Okt. 2014 13:29    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

Ja habe es gerade festgestellt dass es wenn ich es im E3 starte funktioniert.

Ich starte es eigentlich sonst immer im VBSedit in dem ich dort auf die "Play" Taste drücke!

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

RSchulz
Moderator²
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: 16. Okt. 2014 13:32    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 Daudi2010 10 Unities + Antwort hilfreich

Das Problem ist, dass wenn du es so anpasst zwar auch funktioniert, aber nur solange, wie nur eine E3-Session offen ist. Mit WScript bezieht es sich aber immer auf die ausführende Session. Mit CreateObject bezieht es sich immer nur auf die erste!

Du solltest also bei Scripten dieser Art vorsichtig sein. Im .Net ist die Zuordnung noch schwieriger  Mir aber allemal dieser Aufwand wert, da der Nutzen um ein vielfaches größer ist.

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

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

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

Daudi2010
Mitglied



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

Beiträge: 52
Registriert: 16.05.2014

E3.Series 2014

erstellt am: 16. Okt. 2014 13:35    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

Ok vielen Dank das ist gut zu wissen.

So komme ich jetzt aber erstmal weiter. 

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

RSchulz
Moderator²
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: 16. Okt. 2014 13:43    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 Daudi2010 10 Unities + Antwort hilfreich

Hier mal ein Beispiel aus dem .Net:
Code:

    Public Declare Function GetForegroundWindow Lib "user32.dll" () As Int32
    Public Declare Function GetWindowThreadProcessId Lib "user32.dll" (ByVal hwnd As Int32, ByRef lpdwProcessId As Int32) As Int32

    Public E3App As E3.e3Application
    Public E3Prj As E3.e3Job

    Public DebugMode As Boolean = False

    Public Function GetE3Components() As Boolean

        '-------------------------------------------------------------------------------
        ' gets the active or starts a session of E³Series with an opened project
        '-------------------------------------------------------------------------------
        ' >>> Return Value <<<
        ' True  >>> Session connected
        ' False >>> an error occurs
        '-------------------------------------------------------------------------------

        Dim E3Dis As CT.Dispatcher
        Dim ActProc As Process
        Dim WindowsTitle As String

        Try

            E3App = CreateObject("CT.Application")

            If DebugMode = True Then
                E3Prj = E3App.CreateJobObject
            Else
                E3Dis = CreateObject("CT.Dispatcher")
                Application.DoEvents()
                ActProc = GetActiveAppProcess()

                WindowsTitle = ActProc.MainWindowTitle

                If InStr(WindowsTitle, "E³.cable") > 0 Then
                    E3App = E3Dis.GetE3ByProcessId(ActProc.Id)
                    Application.DoEvents()
                    E3Prj = E3App.CreateJobObject
                Else
                    MsgBox("Der E3-Prozess wurde nicht erkannt oder ist nicht aktiv. Bitte wenden Sie sich an Ihren Systemadministrator. (Schulz 387)", MsgBoxStyle.Information)
                    E3Dis = Nothing
                    Return False
                End If

                E3Dis = Nothing
            End If

            Return True

        Catch ex As Exception

            E3Prj = Nothing
            E3Dis = Nothing
            E3App = Nothing
            MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler in Functions: GetE3Components")
            Return False

        End Try
    End Function


    Public Function GetActiveAppProcess() As Process

        '-------------------------------------------------------------------------------
        ' Getting handle of foreground window (the active application)
        ' and returning it to activeProcessHandle
        '-------------------------------------------------------------------------------

        Dim activeProcessID As IntPtr

        Try

            GetWindowThreadProcessId(GetForegroundWindow(), activeProcessID)

            Return Process.GetProcessById(activeProcessID)

        Catch ex As Exception

            MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler in Functions: GetActiveAppProcess")
            Return Nothing

        End Try
    End Function


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

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

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

Daudi2010
Mitglied



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

Beiträge: 52
Registriert: 16.05.2014

E3.Series 2014

erstellt am: 16. Okt. 2014 14: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

ok das werde ich mir auch mal näher anschauen.

Ich hab da noch eine andere Frage.
Bis jetzt bin ich ja immer von einem Symbol zu einem anderen indem ich geschaut habe was denn am anderen Ende verbunden ist.
Bei meinen -I1 bis -In ist es aber nun so dass die nicht elektrisch verbunden ist.

Ist es möglich über den X-Wert den ich jetzt ja habe mich bis runter zu dem ED-Flex Eingang zu hangeln und dabei alle Bauteile auf dem Weg herauszufinden?

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

RSchulz
Moderator²
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: 16. Okt. 2014 14: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 Nur für Daudi2010 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Daudi2010:
Ist es möglich über den X-Wert den ich jetzt ja habe mich bis runter zu dem ED-Flex Eingang zu hangeln und dabei alle Bauteile auf dem Weg herauszufinden?

Gedanklich geht das alles, da bin ich mir ziemlich sicher. Das ganz ist aber nicht ganz einfach, da man hier über die Connection bzw. das Netzsegment gehen muss. Da wird schon etwas mehr Gehirnschmalz fließen müssen 

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

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

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

Daudi2010
Mitglied



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

Beiträge: 52
Registriert: 16.05.2014

E3.Series 2014

erstellt am: 16. Okt. 2014 14:24    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

ok ja sowas ähnliches hab ich ja schon mal gemacht, nur waren da alle elektronisch verbunden und da bin ich ja dann eben über Netsegment, getconnectedpin usw gegangen. .

Denke wenn ich mal den ersten Stecker der an dem Symbol ist habe ist der Rest nicht mehr ganz so schwer.

Woher bekommt man denn tiefere Einblicke in das Objektmodell von E3 ?

Ich muss ja noch einiges programmieren und habe leider nicht mehr allzuviel Zeit

[Diese Nachricht wurde von Daudi2010 am 16. Okt. 2014 editiert.]

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