Laden...

Automatisierung externer Anwendungen

Erstellt von Seamus vor 8 Jahren Letzter Beitrag vor 8 Jahren 1.773 Views
S
Seamus Themenstarter:in
3 Beiträge seit 2015
vor 8 Jahren
Automatisierung externer Anwendungen

Hallo an alle,

bin ein neuer.

Bis jetzt habe ich nur, ausser in Kindertagen mit QBasic, kleine Tools mit Autoit programmiert die mir die tägliche Arbeit erleichten.

Irgendwie hab ich mir gedacht, mensch Junge, könntest ja auch mal eine "echte" Sprache erlernen und bin auf C# gestoßen.
Jetzt frage ich mich natürlich ob C# auch das richtige für meine Bedürfnisse ist?
Ich würde gerne etwas näher an die zu automatisierenden Programme heran kommen (z.B. Siemens NX [CAD]) als Fenster auslesen, verarbeiten und Tastenkombinationen senden.

Befindet sich hier eventuell sogar jemand mit Erfahrung auf dem Gebiet?

Habe ich in C# auch so interessante Funktionen wie "Image search" und "Pixel search" wie in Autoit zur Verfügung?

Was denkt ihr darüber?

3.003 Beiträge seit 2006
vor 8 Jahren

Ääääh. Hm. Also, vorsichtig ausgedrückt, deckt sich deine Definition von Programmierung nicht so recht mit dem, was ich darunter verstehen würde.

AutoIt ist, soweit ich weiß, nicht viel mehr als ein Makrorekorder. Heisst, es hängt sich an bestimmte Prozesse und simuliert vom Nutzer einstellbar Mausklicks oder Tastenanschläge. Die Einstellung solcher Makros würde ich nur sehr bedingt als "Programmierung" bezeichnen.

Im Prinzip könntest du dir dasselbe, was AutoIt macht, auch nachprogrammieren. Also dich an irgendwelche (System)prozesse hängen, dort auf Ereignisse warten und danach einem Drittprogramm vorgaukeln, der Benutzer hätte irgendeine Aktion ausgelöst. Unter Windows halte ich da C# für bedingt geeignet und würde eher die Richtung C++ empfehlen.

Irgendwie hat die ganze Idee aber grundsätzlich einen unangenehmen Beigeschmack. Das ganze liest sich bei dir so, als wenn jemand eine erhaltene Email ausdrucken, dann kopieren, wieder einscannen und dann durch eine Texterkennung jagen möchte, damit er sie auf seinem Rechner lesen kann. Soll heißen: anstatt dich an die grafische Oberfläche eines Drittprogramms zu hängen und dort Zahlen auszulesen, gibt es sicherlich Schnittstellen, die die Daten auch so zur Verfügung stellen.

Nimm's nicht übel, aber die Idee, grafische Benutzeroberflächen quasi zu kidnappen und von außen zu malträtieren, halte ich nicht für den allerbesten Einstieg in die Programmierung.

Ist aber nur eine Meinung, sicher gibt's da auch genug, die das anders sehen.

LaTino

[Edit] Dachte ich mir doch. Man kann Addins für NX erstellen, und das geht wunderbar mit C#.
http://www.plm.automation.siemens.com/en_us/support/gtac/
Bisschen nach NX und Addin und Tutorial suchen, und du wirst fündig. Das würde ich dann eher als passablen Einstieg sehen.

"Furlow, is it always about money?"
"Is there anything else? I mean, how much sex can you have?"
"Don't know. I haven't maxed out yet."
(Furlow & Crichton, Farscape)

709 Beiträge seit 2008
vor 8 Jahren

Zumindest für Siemens NX scheint es ein API zu geben, das man mit C# ansprechen kann.
Es kann allerdings sein, dass man für dessen Nutzung eine bestimmte Lizenz haben muss.

16.834 Beiträge seit 2008
vor 8 Jahren

Stell Dir mal vor, wie das Forum aussehen würde, wenn jeder einen Thread mit dem Titel

Hallo und mal doof gefragt 😉 erstellen würde.
Deswegen gibt es Forenregeln ( [Hinweis] Wie poste ich richtig? ) die für alle gelten.
Zudem war der Forenbereich Smalltalk völlig falsch.
Ich hab das jetzt mal geändert...

Wenn Du das in Zukunft beachtest, dann wirst Du hier mehr Freude haben und auch potentiell mehr Hilfe bekommen.

Ansonsten seh ich das wie LaTino.

T
64 Beiträge seit 2010
vor 8 Jahren

Hi,

für alle Fragen die C# und .Net betreffen bist du hier schon richtig.

Für alles, was mit NX und der API zu tun hat, kann ich dir dieses Forum Cad.de oder diese Seite NX Journaling empfehlen.

Um NX mit NXOpen bzw. Journalen "fernzusteuern" wirst du aber um die Grundlagen von C# nicht herum kommen.

Bevor du dich also an NX versuchst...erstmal C# lernen 😉

S
Seamus Themenstarter:in
3 Beiträge seit 2015
vor 8 Jahren

Danke erst mal,

so ganz ist es nicht mit macros aufnehmen und abspielen, man kann schon recht ordentlich damit programmieren und GUIs bauen, es ragt recht nahe an die Programmierart die ich in einigen einfacheren Tutorials gesehen habe heran, wohingegen vielleicht nicht ganz so elegant und gerade was GUIs betrifft nimmt einen Autoit nicht so schön an die Hand.

Danke für die Links, ich denke das ich das was ich bisher so geschrieben habe schon recht bald
auch in C# können würde, und dann hoffentlich eleganter.

Schönen Gruß

3.003 Beiträge seit 2006
vor 8 Jahren

Du darfst "Macro aufnehmen" nicht so wörtlich nehmen. AutoIt hat schon eine Script"sprache", mit der man einiges anstellen kann, keine Frage. Wenn man das als Programmiersprache sehen will (und darüber ließe sich gut streiten), dann ist es bestenfalls eine deklarative Sprache, am ehesten noch mit Pascal zu vergleichen, und der Zweck ist einzig und allein auf die Manipulation von Windows-Fenstern gerichtet. Das hat mit Programmieren, so wie ich es verstehen würde, relativ wenig zu tun.

Wovon du dich frei machen solltest, ist der Gedanke, dass C# auch so etwas ist, nur mächtiger. Ansonsten würdest du vermutlich eine Enttäuschung erleben.

(Davon ab steht die Tatsache, dass Softwareentwicklung ein unglaublich spannendes Hobby / Beruf sein kann. Wenn AutoIt ein Hammer ist, hättest du mit C# wie mit jeder anderen Hochsprache ein Werkzeug, mit dessen Hilfe du jede beliebige Fabrik bauen kannst. Auch eine Hammerfabrik, wenn dir danach ist 😄).

LaTino

"Furlow, is it always about money?"
"Is there anything else? I mean, how much sex can you have?"
"Don't know. I haven't maxed out yet."
(Furlow & Crichton, Farscape)

S
Seamus Themenstarter:in
3 Beiträge seit 2015
vor 8 Jahren

Gut gut 😃

ist bei mir ja auch nur ein Hobby das ich verfolge um mir und meinen Kollegen die Tägliche Arbeit zu erleichtern.

Es geht mir halt drum, solche Funktionalitäten auch weiterhin realisieren zu können wenn erforderlich und dann nicht wieder auf Autoit zurückgreifen zu müssen.
Aber natürlich auch wirklich nur wenn es nicht eleganter geht.

Und es geht um das erlernen etwas neuem und besserem, eine Hammerfabrik werde ich wohl nicht errichten wollen aber der Vergleich gefällt mir sehr gut 😄