WinRar

Hilfe & Unterstützung für das ISN AutoIt Studio
Antworten
ISN_Fan
Beiträge: 58
Registriert: Mo 8. Feb 2016, 14:46
Kontaktdaten:

WinRar

Beitrag von ISN_Fan » Di 6. Okt 2020, 23:53

Hallo,

in den ISN-Makroslot 7 möchte ich ein Script legen, welches von dem geöffneten Projekt eine WinRar auf USB erstellt.
Dazu brauche ich den "Pfad des aktuell geöffneten Projekts" und den "Namen des aktuell geöffneten Projektes."

Problem: @Scriptdir gibt das Verzeichnis von jenem Script zurück, welches in ISN-Makroslot 7 liegt und ausgeführt wird.
Wie erhalte ich die Daten vom Projekt, dass im aktuellen „ISN Autoit Studio“ geöffnet ist?

Kann ich dazu _ISN_Variablen_aufloesen("%ProjectName%") nutzen oder gibt es eine bessere Möglichkeit?

%ProjectDir%
Pfad zum Aktuell geöffnetem Projekt.

%ProjectName%
Name des aktuell geöffneten Projektes.

Danke

PS: Im Makroslot kann man eine Checkbox setzen
(x) Parameter mittelts Execute ausführen (ermöglicht Variablen aus dem ISN)

Execute(_ISN_Variablen_aufloesen)("%ProjectName%") )
geht nicht :-)

Benutzeravatar
ISI360
Administrator
Beiträge: 257
Registriert: Fr 11. Okt 2013, 13:06
Kontaktdaten:

Re: WinRar

Beitrag von ISI360 » Mi 7. Okt 2020, 10:05

Hallo

Das sollte kein propblem sein. Du kannst in den ganzen Pfadangaben der Makros alle ISN Variablen direkt verwenden. Es müsste also schon ausreichen, in eine Pfadangae zb. %ProjectDir% zu schreiben. (Ohne weitere Funktionen...das macht das ISN schon selbst)

So könntest du zb. mit dem Makro "Programm ausführen" deine gewünschten Werte via Variablen (zb. %ProjectDir%) als Parameter zu einem externen Tool übergeben. Die "Execute Checkbox" musst du in diesem Fall nicht zwingend setzten. ISN eigene Variablen werden immer aufgelöst. Du könntest mir der Checkbox nur "noch mehr" rausholen...sprich jede beliebige Variable aus dem AutoIt Quellcode könnte damit abgerufen werden.

ISN_Fan
Beiträge: 58
Registriert: Mo 8. Feb 2016, 14:46
Kontaktdaten:

Re: WinRar

Beitrag von ISN_Fan » Fr 9. Okt 2020, 17:53

Ich korriegiere mich.

Ich möchte im Script auf die Variable zugreifen.

Beispiel

test.au3

beinhaltet

MsgBox ( 262144 , "%ProjectDir% " , %ProjectDir% )

F5 in ISN ergibt Fehler

: ==> Unable to parse line.:

Wie kann ich Variablen wie %ProjectDir% diekrekt in meinem Script verwenden und mir den Inhalt der Variablen ausgeben lassen?

ISN_Fan
Beiträge: 58
Registriert: Mo 8. Feb 2016, 14:46
Kontaktdaten:

Re: WinRar

Beitrag von ISN_Fan » Fr 9. Okt 2020, 18:37

ISI360 hat geschrieben:
Mi 7. Okt 2020, 10:05
So könntest du zb. mit dem Makro "Programm ausführen" deine gewünschten Werte via Variablen (zb. %ProjectDir%) als Parameter zu einem externen Tool übergeben. Die "Execute Checkbox" musst du in diesem Fall nicht zwingend setzten. ISN eigene Variablen werden immer aufgelöst. Du könntest mir der Checkbox nur "noch mehr" rausholen...sprich jede beliebige Variable aus dem AutoIt Quellcode könnte damit abgerufen werden.
Kannst Du dafür ein lauffähiges Bespiel posten?

Benutzeravatar
ISI360
Administrator
Beiträge: 257
Registriert: Fr 11. Okt 2013, 13:06
Kontaktdaten:

Re: WinRar

Beitrag von ISI360 » Sa 10. Okt 2020, 10:42

Achso, also direkt in deinem Skript kannst du leider keine ISN Varibalen verwenden. Wenn du das machen willst, musst du dein Skript als ISN Plugin umschreiben und mit der Plugin-Schnittstelle an das ISN binden. Dann könntest du auch ISN Variablen im Skript abfragen. (So machht das zb. auch das ISN Form Studio 2)
Du kannst dir dazu aber die verschiedenen Demo Plugins auf meiner Homepage ansehen...falls du daran interesse hast.

Anbei noch ein Beispiel mit dem "Befehl ausführen" Makro: (Mit Befehl ausführen kannst du quasi alles machen. Da ist "Programm starten" vlt. mehr limitiert)

Code: Alles auswählen

Run(@ComSpec & " /c " & "echo "& Eval("Offenes_Projekt") & "& pause")
-> Dieser Code zeigt eine cmd Box mit dem Pfad des aktuell geöfffneten ISN Projektes an. Dabei könntest du mit "Eval" jede beliebige Variable aus dem ISN Quellcode an externe Programme übergeben. (In diesem Fall wird es an eine cmd box übergeben)

Code: Alles auswählen

Run(@ComSpec & " /c " & "echo "& _ISN_Variablen_aufloesen("%ProjectDir%") & "& echo "& _ISN_Variablen_aufloesen("%ProjectName%") & "& pause")
-> Und so könntest du die verschiedenen ISN Variablen mir "Befehl ausführen" verwenden.

Hoffe das hilft dir etwas.

Antworten