Häufig gestellte Fragen (FAQs)

 

ISN AutoIt Studio

ISN AutoIt Studio entstand aus meinem alten ISN AutoIT Form Studio (Link) an dem ich seit 2010 gearbeitet habe.
Direkt an ISN AutoIt Studio (und den Plugins) arbeite ich jetzt seit ca. März 2011. (Natürlich nicht jeden Tag ^^)

Anbei die Liste.

Info: Das “|” Symbol bezieht sich auf die Cursorposition.

#; — Variablen —
chk=$Checkbox_|
edt=$Edit_|
inp=$Input_|
lbl=$Label_|
but=$Button_|
rad=$Radio_|
tab=$Tab_|

error=$Error |
result=$Result |

#; — Constant GUICtrlRead —
gchecked=$GUI_CHECKED|
gunchecked=$GUI_UNCHECKED|

#; — Constant GUICtrlState —
genable=$GUI_ENABLE|
gdisable=$GUI_DISABLE|
ghide=$GUI_HIDE|
gshow=$GUI_SHOW|
gfocus=$GUI_FOCUS|

#; — Events and messages —
eclose=$GUI_EVENT_CLOSE|
emin=$GUI_EVENT_MINIMIZE|
erestore=$GUI_EVENT_RESTORE|
emax=$GUI_EVENT_MAXIMIZE|

#; — PreSelected Commands —
cmd=RunWait(@ComSpec & ‘ /c |’, ”, @SW_HIDE)\n
slp1=Sleep(1000)\n|
slp2=Sleep(2000)\n|
slp3=Sleep(3000)\n|
slp4=Sleep(4000)\n|
slp5=Sleep(5000)\n|

#; — GUI Common Prefixes to Functions —
gcc=GUICtrlCreate|
gcs=GUICtrlSet|

#; — Macro’s —
cr1=& @CRLF |
cr2=& @CRLF & @CRLF |
cr3=& @CRLF & @CRLF & @CRLF |
cr4=& @CRLF & @CRLF & @CRLF & @CRLF |
cr5=& @CRLF & @CRLF & @CRLF & @CRLF & @CRLF |
tab1=& @TAB |
tab2=& @TAB & @TAB |
tab3=& @TAB & @TAB & @TAB |
tab4=& @TAB & @TAB & @TAB & @TAB |
tab5=& @TAB & @TAB & @TAB & @TAB & @TAB |
lf1=& @LF |
lf2=& @LF & @LF |
lf3=& @LF & @LF & @LF |
lf4=& @LF & @LF & @LF & @LF |
lf5=& @LF & @LF & @LF & @LF & @LF |

#; — Keywords —
cl=ContinueLoop|
el=ExitLoop|
err=@Error |
ext=@Extended |

#; — Directives —
include=#include \n|
includeonce=#include-once\n|
reg=#Region – |\n\n
ereg=#EndRegion\n\n|
nti=#NoTrayIcon\n\n|

#; — Multiline Functions —
ifthen=If | Then\nEndIf
ifelse=If | Then\nElse\nEndIf
ifelseif=If | Then\nElseIf \nElse\nEndIf
dountil=Do\n\t|\nUntil
fornext=For $i = | To  Step 1\nNext
fun=Func _|()\nEndFunc
selectcase=Select\n\n\tCase |\n\t\n\tCase \n\t\n\tCase \n\t\n\tCase \n\t\n\tCase Else \n\t\nEndSelect\n
more=|\n\n\tCase \n\t\t\n\tCase \n\n\tCase \n\n\tCase \n\n\tCase Else\t
whilewend=While |\nWEnd

#; — Start of Functions —
for0=For $i = 0 To |
for0ub=For $i = 0 To UBound(|)
for1=For $i = 1 To |
for1ub=For $i = 1 To UBound(|)

#; — GUI setup —
setupgui=#include \n\n#Region – GUI Create\n\nGUICreate(|)\n\n#EndRegion\n\nGUISetState(@SW_SHOW)\n\nselectloop\n\nfunctions
selectloop=#Region – GUI SelectLoop\n\nWhile 1\n\t$msg = GUIGetMsg()\n\nSelect\n\n\tCase $msg = -3 ;$GUI_EVENT_CLOSE\n\tExit\n\n\tCase $msg = |\n\t\n\tCase $msg = \n\t\n\tCase $msg = \n\t\n\tCase $msg = \n\t\n\tCase $msg = \n\t\nEndSelect\n\nWEnd\n#EndRegion
moremsg=$msg = |\n\n\tCase $msg = \n\t\t\n\tCase $msg = \n\n\tCase $msg = \n\n\tCase $msg = \n\n\tCase $msg =\n\t
functions=; Start – Functions\n\nFunc _|A()\nEndFunc\n\nFunc _B()\nEndFunc\n\nFunc _C()\nEndFunc\n\nFunc _D()\nEndFunc\n\nFunc _E()\nEndFunc\n\nFunc _F()\nEndFunc\n\nFunc _G()\nEndFunc\n\nFunc _H()\nEndFunc\n\nFunc _I()\nEndFunc\n\nFunc _J()\nEndFunc

################ ‘All Functions’ ################

#; — Misc Functions —
#~ abs
#~ acos
ad=AdlibDisable()|
ae=AdlibEnable(|)
#~ asc
#~ asin
as=Assign(|)
#~ atan
aso=AutoitSetOption(|)
awgt=AutoitWinGetTitle()|
awst=AutoitWinSetTitle(|)
ba=BitAND(|)
bn=BitNOT(|)
bo=BitOR(|)
bs=BitShift(|)
bx=BitXOR(|)
bi=BlockInput(|)
br=Break(|)
#~ call
cdt=CDTray(|)
#~ chr
cg=ClipGet()|
cp=ClipPut(|)
cw=ConsoleWrite(| & @LF)

#; — Control Functions —
ccl=ControlClick(|)
cco=ControlCommand(|)
cd=ControlDisable(|)
ce=ControlEnable(|)
cf=ControlFocus(|)
cgf=ControlGetFocus(|)
cgh=ControlGetHandle(|)
cgp=ControlGetPos(|)
cgt=ControlGetText(|)
ch=ControlHide(|)
clv=ControlListView(|)
cm=ControlMove(|)
cs=ControlSend(|)
cst=ControlSetText(|)
csh=ControlShow(|)

#~ cos
#~ dec

#; — Dir Functions —
dco=DirCopy(|)
dcr=DirCreate(|)
dgs=DirGetSize(|)
dm=DirMove(|)
dr=DirRemove(|)

dll=DllCall(|)
dllc=DllClose(|)
dllo=DllOpen(|)

#; — Drive Functions —
dgd=DriveGetDrive(|)
dgfs=DriveGetFileSystem(|)
dgl=DriveGetLabel(|)
dgs=DriveGetSerial(|)
dgt=DriveGetType(|)
dma=DriveMapAdd(|)
dmd=DriveMapDel(|)
dmg=DriveMapGet(|)
dsl=DriveSetLabel(|)
dsf=DriveSpaceFree(|)
dst=DriveSpaceTotal(|)
ds=DriveStatus(|)

eg=EnvGet(|)
es=EnvSet(|)
eu=EnvUpdate()|
#~ eval
#~ exp

#; — File Functions —
fcd=FileChangeDir(|)
fcl=FileClose(|)
fco=FileCopy(|)
fcs=FileCreateShortcut(|)
fd=FileDelete(|)
fe=FileExists(|)
ffff=FileFindFirstFile(|)
ffnf=FileFindNextFile(|)
fga=FileGetAttrib(|)
fgln=FileGetLongName(|)
fgs=FileGetShortcut(|)
fgsn=FileGetShortName(|)
fgsi=FileGetSize(|)
fgt=FileGetTime(|)
fgv=FileGetVersion(|)
fi=FileInstall(|)
fm=FileMove(|)
fo=FileOpen(|)
fod=FileOpenDialog(|)
fr=FileRead(|)
frl=FileReadLine(|)
frc=FileRecycle(|)
frce=FileRecycleEmpty(|)
fsd=FileSaveDialog(|)
fsf=FileSelectFolder(|)
fsa=FileSetAttrib(|)
fst=FileSetTime(|)
fw=FileWrite(|)
fwl=FileWriteLine(|)

fsp=FtpSetProxy(|)

#; —  GUI Functions —
gc=GUICreate(|)
gcca=GUICtrlCreateAvi(|)
gccb=GUICtrlCreateButton(|)
gcccb=GUICtrlCreateCheckbox(|)
gccc=GUICtrlCreateCombo(|)
gcccm=GUICtrlCreateContextMenu(|)
gccda=GUICtrlCreateDate(|)
gccdu=GUICtrlCreateDummy()|
gcce=GUICtrlCreateEdit(|)
gccg=GUICtrlCreateGroup(|)
gccgc=GUICtrlCreateGroup(”, -99, -99, 1, 1) ; Close group.\n|
gccico=GUICtrlCreateIcon(|)
gcci=GUICtrlCreateInput(|)
gccla=GUICtrlCreateLabel(|)
gccli=GUICtrlCreateList(|)
gccm=GUICtrlCreateMenu(|)
gccmi=GUICtrlCreateMenuItem(|)
gccpi=GUICtrlCreatePic(|)
gccpr=GUICtrlCreateProgress(|)
gccr=GUICtrlCreateRadio(|)
gccs=GUICtrlCreateSlider(|)
gcct=GUICtrlCreateTab(|)
gccti=GUICtrlCreateTabItem(|)
gcctic=GUICtrlCreateTabItem(”) ; Close tabitem.\n|
gcctv=GUICtrlCreateTreeView(|)
gcctvi=GUICtrlCreateTreeViewItem(|)
gccu=GUICtrlCreateUpdown(|)
gcd=GUICtrlDelete(|)
gcgs=GUICtrlGetState(|)
gcr=GUICtrlRead(|)
gcrm=GUICtrlRecvMsg(|)
gcsm=GUICtrlSendMsg(|)
gcstd=GUICtrlSendToDummy(|)
gcsbc=GUICtrlSetBkColor(|)
gcsco=GUICtrlSetColor(|)
gcscu=GUICtrlSetCursor(|)
gcsd=GUICtrlSetData(|)
gcsf=GUICtrlSetFont(|)
gcsi=GUICtrlSetImage(|)
gcsl=GUICtrlSetLimit(|)
gcsoe=GUICtrlSetOnEvent(|)
gcsp=GUICtrlSetPos(|)
gcsr=GUICtrlSetResizing(|)
gcss=GUICtrlSetState(|)
gcsst=GUICtrlSetStyle(|)
gcst=GUICtrlSetTip(|)
gd=GUIDelete(|)
ggci=GUIGetCursorInfo(|)
ggm=GUIGetMsg(|)
gsbc=GUISetBkColor(|)
gsc=GUISetCoord(|)
gscu=GUISetCursor(|)
gsf=GUISetFont(|)
gsh=GUISetHelp(|)
gsi=GUISetIcon(|)
gsoe=GUISetOnEvent(|)
gss=GUISetState(|)
gsg=GUIStartgroup(|)
gs=GUISwitch(|)

#~ hex
hks=HotKeySet(|)
hsp=httpSetProxy(|)
ig=InetGet(|)
igs=InetGetSize(|)

id=IniDelete(|)
ir=IniRead(|)
irs=IniReadSection(|)
irsn=IniReadSectionNames(|)
iw=IniWrite(|)

ib=InputBox(|)

#~ int
isad=IsAdmin()|
isar=IsArray(|)
isd=IsDeclared(|)
isf=IsFloat(|)
isi=IsInt(|)
isn=IsNumber(|)
iss=IsString(|)
#~ log
mgs=MemGetStats()|
#~ mod

#; —  Mouse Functions —
mc=MouseClick(|)
mcd=MouseClickDrag(|)
md=MouseDown(|)
mgc=MouseGetCursor()|
mgp=MouseGetPos()|
mm=MouseMove(|)
mu=MouseUp(|)
mw=MouseWheel(|)

mb=MsgBox(|)
num=Number(|)
#~ opt
#~ ping
pcs=PixelChecksum(|)
pgc=PixelGetColor(|)
ps=PixelSearch(|)

#; — Process Functions —
pc=ProcessClose(|)
pe=ProcessExists(|)
pl=ProcessList(|)
psp=ProcessSetPriority(|)
pw=ProcessWait(|)
pwc=ProcessWaitClose(|)

poff=ProgressOff()|
pon=ProgressOn(|)
pset=ProgressSet(|)

rdm=Random(|)
rd=RegDelete(|)
rek=RegEnumKey(|)
rev=RegEnumVal(|)

rr=RegRead(|)
rw=RegWrite(|)

rnd=Round(|)

#~ run
ras=RunAsSet(|)
rwa=RunWait(|)

#~ send

se=SetError(|)
sex=SetExtended(|)
sd=Shutdown(|)
#~ sin

slp=Sleep(|)

sp=SoundPlay(|)
sswv=SoundSetWaveVolume(|)

sio=SplashImageOn(|)
so=SplashOff()|
sto=SplashTextOn(|)

#~ sqrt
sbgt=StatusbarGetText(|)

#; — String Functions —
stri=String(|)
sacr=StringAddCR(|)
sf=StringFormat(|)
sis=StringInStr(|)
sian=StringIsAlNum(|)
sia=StringIsAlpha(|)
siascii=StringIsASCII(|)
sid=StringIsDigit(|)
sif=StringIsFloat(|)
sii=StringIsInt(|)
sil=StringIsLower(|)
sisp=StringIsSpace(|)
siu=StringIsUpper(|)
sixd=StringIsXDigit(|)
sl=StringLeft(|)
slen=StringLen(|)
slower=StringLower(|)
sm=StringMid(|)
srep=StringReplace(|)
sr=StringRight(|)
ss=StringSplit(|)
sscr=StringStripCR(|)
ssws=StringStripWS(|)
stl=StringTrimLeft(|)
str=StringTrimRight(|)
supper=StringUpper(|)

#; — Misc Functions —
#~ tan
td=TimerDiff(|)
ti=TimerInit()|
toolt=ToolTip(|)

#; — Tray Functions —
tt=TrayTip(|)

ub=UBound(|)

#; — Window Functions —
wat=WinActivate(|)
wa=WinActive(|)
wc=WinClose(|)
we=WinExists(|)
wgcp=WinGetCaretPos()|
wgcl=WinGetClassList(|)
wgcs=WinGetClientSize(|)
wgh=WinGetHandle(|)
wgpo=WinGetPos(|)
wgpr=WinGetProcess(|)
wgs=WinGetState(|)
wgte=WinGetText(|)
wgti=WinGetTitle(|)
wk=WinKill(|)
wl=WinList(|)
wmsi=WinMenuSelectItem(|)
wma=WinMinimizeAll()|
wmau=WinMinimizeAllUndo()|
wm=WinMove(|)
wsot=WinSetOnTop(|)
wss=WinSetState(|)
wst=WinSetTitle(|)
wstr=WinSetTrans(|)
ww=WinWait(|)
wwa=WinWaitActive(|)
wwc=WinWaitClose(|)
wwna=WinWaitNotActive(|)

Am besten du lädst dir das Compiled Paket von meiner Homepage herunter und entpackst es auf deinem USB Stick (Oder wo auch immer ^^).

Falls du auch deine AutoIt Installation in das ISN integrieren möchtest, musst du im Hauptverzeichnis des ISN einen Ordner mit dem Namen “AutoIt” (Ohne Anführungszeichen) anlegen. Darin kannst du dann deine AutoIt Installation einfügen.

Die Ordnerstruktur sollte dann so aussehen:
\ISN AutoIt Studio\AutoIt\Aut2Exe
\ISN AutoIt Studio\AutoIt\AutoIt3Wrapper
\ISN AutoIt Studio\AutoIt\AutoIt3.exe
usw.

Sind diese Dateien vorhanden werden sie automatisch von ISN verwendet. Falls nicht sucht das ISN nach einer lokalen Installation auf dem PC und verwendet ggf. diese.
Zum Abschluss brauchst du das ISN nur mehr starten und im Erstkonfigurationsassistent den Portable Modus auswählen.

Der Text des Makroslots wird aus dem zugewiesenem Makro entnommen. Also Name des Makro = Name des Makroslots.
Das Icon für den Makroslot kann entweder nach dem zuweisen des Triggers oder unter “Trigger bearbeiten” geändert werden.

Es stehen dir 10 freie Slots zur Verfügung die du mit einem Makro belegen kannst. So kannst du zb. mit einem Slot ein externes Programm starten lassen oder diverse andere Aufgaben miteinander verbinden.
Pro Projekt stehen dir 10 Slots zur Verfügung die du beliebig (Icon, Text & Funktion) anpassen kannst!

Die Sprachdateien für ISN befinden sich im Ordner \Data\Language. Dort erstellst du dir am besten eine kopie der zb. german.lng und benennst diese in zb. french.lng. danach öffnest du die neue Datei mit einem Texteditor (zb. Notepad++) und beginnst mit der Übersetzung.

Vergiss bitte nicht in deiner neuen Sprachdatei folgende Werte zu ändern:

language=Name der Sprache (zb. Deutsch)
version=Für welche Version von ISN AutoIt Studio (oder Version des Plugins) ist deine Sprachdatei geeignet? (zb. 0.95 BETA)
Autor=Dein Künstlername (zb. ISI360)
comment=Beliebiger Text (zb. Deutsche Sprachdatei)

Beachte das Plugins wie das Formstudio 2 eigene Sprachdateien hat. Du findest diese im Ordner des Plugins (\Data\Plugins\PLUGINNAME\language). Das verfahren ist das selbe wie oben beschrieben.
-> Die fertigen .lng Dateien sendest du mir am besten via E-Mail an [email protected] zu damit alle etwas davon haben. DANKE! 😉

Du kannst in deinem Projekt Startparameter festlegen. Diese werden verwendet sobald du dein Skript/Projekt testen willst. Startparameter können unter “Projekt -> Projekt testen -> Startparameter festlegen” angegeben werden.
Die Startparameter werden natürlich nicht in dein fertiges (kompiliertes) Projekt übernommen sondern dienen nur zu Testzwecken.

Der komplette Quellcode kann von meiner Homepage (http://www.isnetwork.at) heruntergeladen werden.

Erstelle ein neues Projekt und wähle “Neues Projekt aus vorhandener .au3 Datei erstellen” im Dialogfenster aus. Darunter gibst du nun den Pfad zu deinem .au3 Skript an welches als Hauptdatei (Startdatei) verwendet werden soll.
Wenn du dein Projekt nun erstellst wird die angegebene Datei im neuen Projekt als Hauptdatei benutzt. Falls du noch weitere Dateien in deinem Projekt benötigst kannst du sie später einfach in das Projekt importieren (Im Menü Datei)!

Du kannst eine neue Projektvorlage erstellen und darin deine Makros definieren.
Falls du nun ein neues Projekt erstellst wählst du einfach deine neue Vorlage aus.
Die Makros werden danach automatisch in das neue Projekt übernommen!

 

ISN Form Studio 2

Die .isf Dateien sind zu 100% abwärtskompatibel! Du kannst sie also ohne Probleme verwenden.

Sobald du jedoch die Datei im Form Studio 2 änderst und speicherst wir die GUI im neuen Format gespeichert und es ist möglich das diese bei älteren Versionen nicht korrekt funktionieren wird.

Um Controls richtig in einem Tab zu erstellen musst du zuerst den Tab selbst (oder ein Control welches sich schon im Tab befindet) markieren. Danach wählst du die Seite aus in der du das Control erstellen möchtest. Als letzten Schritt ziehst du das gewünschte Control einfach aus der Toolbox in den Tab und fertig!

Beachte immer: Das neue Control wird IMMER der Tabseite zugewiesen die gerade gewählt ist. Ist kein Tab oder Tabcontrol markiert wird das Control “nur” normal in die GUI gezeichnet. Solltest du einmal ein Control auf der falschen Tabseite erstellt haben kannst du dies rechts im Control Editor unter “Allgemein -> Tabseite” ändern!

Ja, dies ist möglich.   Auf meiner Homepage steht unter “Downloads -> Plugins” ein .KFX zu .ISF Konverter zum Download bereit.