Self-Tcl FORUM :: Thema anzeigen - Exe für ANSYS
Self-Tcl FORUM - Das deutsche Tcl Tk Forum
Self-Tcl FORUM - Das deutschsprachige Tcl-Forum_
WWW.SELF-TCL.DE / FORUM

Exe für ANSYS

 
Neues Thema eröffnen   Neue Antwort erstellen    Self-Tcl FORUM Foren-Übersicht -> Tcl/Tk Entwickler/Programmierung-Forum
<< Vorheriges Thema anzeigen :: Nächstes Thema anzeigen >>  
Autor Nachricht
Alexandru.Dadalau
Junior-User
Junior-User


Anmeldungsdatum: 15.01.2010
Beiträge: 13

BeitragVerfasst am: 10.02.2010, 19:49:23    Titel: Exe für ANSYS Antworten mit Zitat

Hallo wieder!

Dies ist meine zweite Frage in diesem Forum.

Ich möchte eine Exe-Datei aus einem Tcl-Skript erstellen und diese Exe-Datei in ANSYS verwenden. Ich habe nicht den Anspruch, dass die Exe-Datei völlig eigenständig läuft. Im Gegenteil, ich möchte es in ANSYS verwenden.

Die Exe-Datei habe ich schon dank den Beiträgen in diesem Forum mit Hilfe von tcl-Coach 3.1 erstellt.

Das Problem ist, dass in der Exe-Datei ein spezieller Befehl enthalten ist: ans_sendcommand. Diesen Befehl kennt nur die Tcl innerhalb der ANSYS-Umgebung. Der Befehl ist dafür gedacht, ANSYS-Befehle über Tcl-Programme an den ANSYS-Interpreter zu schicken.

Sobald ich das Progrämmchen in eine Exe umwandle, kennt Tcl den Befehl ans_sendcommand nicht mehr. Auch wenn ich das exe aus Ansys ausführe, bekomme ich den Fehler, dass der Befehl unbekannt ist.

Die Frage ist also, wie schaffe ich das Exe in ANSYS so auszuführen, dass die ganzen ANSYS-typischen Befehle bekannt sind.

Vielen, vielen Dank im Voraus für eure Hilfe!

Gruß
Alexandru
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
hank
Top-User
Top-User


Anmeldungsdatum: 10.03.2006
Beiträge: 876
Wohnort: Leipzig

BeitragVerfasst am: 10.02.2010, 21:00:23    Titel: Antworten mit Zitat

Gar nicht, die Exe ist ein separater Prozess und weiss nichts von ANSYS. Kommunikation zwischen Prozessen geschieht mit Interprozesskommunikation...

Viele Grüße
Gö*dejavu*ran
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Alexandru.Dadalau
Junior-User
Junior-User


Anmeldungsdatum: 15.01.2010
Beiträge: 13

BeitragVerfasst am: 10.02.2010, 21:28:08    Titel: Antworten mit Zitat

Hm, das habe ich befürchtet...

Was ich eigentlich erreichen möchte, ist mein Tcl-Programm vor fremden Blickken zu schützen. Ein Exe schien mir die einfachste Methode. Ich brauche aber nicht zwingend ein Exe-Wenn es sowieso in ANSYS nicht verwendet werden kann.

Gibt es da ein andere Möglichkeit ein Tcl-Programm unverständlich aber voll funktionsfähig zu machen?

Gruß
Alexandru
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Alexandru.Dadalau
Junior-User
Junior-User


Anmeldungsdatum: 15.01.2010
Beiträge: 13

BeitragVerfasst am: 11.02.2010, 17:07:54    Titel: Antworten mit Zitat

Habe ein bisschen weiter recherchiert und gesehen, dass es Tcl-Packages zur Verschlüsselung von Text gibt (twofish, aes, des). Damit könnte man auch die Tcl-Programme verschlüsseln.

Wenn ich das Ganze aber richtig verstanden habe, ist das keine Lösung, wenn man sein Programm einer anderen Person verschlüsselt weitergeben möchte. Zum Benutzen des Programms müsste man auch den Schlüssel weitergeben, was die Verschlüsselung umsonst macht.

Irgenwelche Ideen???

Vielen Dank im Voraus!
Alexandru
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
hank
Top-User
Top-User


Anmeldungsdatum: 10.03.2006
Beiträge: 876
Wohnort: Leipzig

BeitragVerfasst am: 16.02.2010, 09:20:16    Titel: Antworten mit Zitat

Hallo,
möglicherweise ist obfuscating oder tbcload etwas für dich
Viele Grüße
Göran
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Alexandru.Dadalau
Junior-User
Junior-User


Anmeldungsdatum: 15.01.2010
Beiträge: 13

BeitragVerfasst am: 18.02.2010, 23:29:04    Titel: Antworten mit Zitat

Hallo Göran,

danke für den Tipp! Ich bin schon seit einigen Tagen am Recherchieren, ist alles nicht so einfach... Ich fasse mal zusammen:

1. tbcload scheint das Richtige zu sein.

2. Ich habe TclDevKit zuerst als Testversion installiert und ein tbc-File aus einem tcl-File generiert. Gibt es auch eine Freeware zum Erstellen von tbc-Files?

3. Ansys verwendet tcl 8.4. Aus dem Grund habe ich die tclcompiler84.exe zum Erstellen des tbc-Files verwendet.

4. Wenn ich aus Ansys versuche das tbc-File zu starten (source filename.tbc) bekomme ich die Fehlermeldung:

The TclPro ByteCode Loader is not available or does not support the correct version version conflict for package "tbcload": have 1.3, need 1.6

Da habe ich schon versucht, das tbcload 1.7 aus der TCL-Library in die ANSYS-Library reinzukopieren aber die wird nicht angenommen, vermutlich, weil tbcload 1.7 für Tcl 8.5 programmiert wurde. Ansys verwendet leider immer noch Tcl 8.4...

Gibt es ein tbcload 1.6 für Tcl 8.4 ???

Ich habe ein Thread von Dominic Ernst gefunden ( http://www.self-tcl.de/forum/viewtopic.php?t=1595&highlight=tbcload ). Er scheint das Problem gelöst zu haben. Und er benutzt dabei kein TDK. Vielleicht kann Dominic mehr Details über seine Lösung angeben.

Viele Grüße
Alexandru
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
hank
Top-User
Top-User


Anmeldungsdatum: 10.03.2006
Beiträge: 876
Wohnort: Leipzig

BeitragVerfasst am: 21.02.2010, 17:46:18    Titel: Antworten mit Zitat

HAllo,

tclpro ist der Vorgänger vom TDK. Da aber TclPro die Version 1.4 hat, wirst du vermutlich die Fehlermeldung lediglich in leicht abgewandelter Form erhalten :-( Wenn nun aber ANSYS tbcload 1.3 bereits hat, wäre es auch möglich, dass auch der passende Compiler dabeisein könnte.

Viele Grüße
Göran
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Alexandru.Dadalau
Junior-User
Junior-User


Anmeldungsdatum: 15.01.2010
Beiträge: 13

BeitragVerfasst am: 22.02.2010, 12:41:53    Titel: Antworten mit Zitat

Hallo,

jetzt habe ich es auch hingekriegt!

Für diejenigen, die so etwas auch brauchen, hier die notwendigen Schritte:

1. TclPro herunterladen (http://ignum.dl.sourceforge.net/project/tclpro/TclPro-1.4.1/1.4.1/tclpro141.exe)

2. Die Licence-Key holen (http://www.tcl.tk/software/tclpro/eval/1.4.html)

3. TclPro installieren, key eingeben und starten. Den gewünschten tcl-Code mit dem Befehl "procomp filename.tcl" compilieren. Es entsteht das file filename.tbc

4. ANSYS stürzt leider ab, wenn ich "source filename.tbc" eingebe. Habe die Ursachen herausgefunden und behoben:
4.1 Das \...\TclPro1.4\win32-ix86\bin\tbcload13.dll muss einmal mit "load" in ANSYS geladen werden.
4.2 Es dürfen keine gesamte namespaces kompiliert werden. Aus diesem Grund muss ich den Sourcecode zerstückeln und separat compilieren. Ich lasse also "namespace eval SpaceName" im source code drin. Ich lasse auch alle "proc SpaceName::ProcName {arg} {" drin. Nur den body von den Proceduren compiliere ich separat.

Vielen Dank noch einmal für die guten Tipps, Göran!

Viele Grüße
Alexandru
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Self-Tcl FORUM Foren-Übersicht -> Tcl/Tk Entwickler/Programmierung-Forum Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.





TCL Tool Command Language, TK Toolkit, Lesen, Fachbücher, Referenzen, Literatur zu Programmierung





Tcl/Tk Bücher, Literatur und Fachbücher
Bücher / Fachbücher / Literatur zu Tcl/Tk



zu Favoriten / als Lesezeichen


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de




| www.Self-Tcl.de | Fragen & Antworten zu Tcl/Tk | Forum Anmeldung | Mitglieder-Login | FORUM | Impressum |



- TOP -
(zurück nach oben auf dieser Seite)