• Bei der Übergabe des Parameters an das Formstudio hast du Leerzeichen im Pfad nicht berücksichtigt. Sprich wenn man, wie bei der Ersteinrichtung vorgeschlagen, den Ordnernamen "ISN AutoIt Studio" verwendet kann Formstudio nie das Form öffnen da immer nur der Pfad bis nach dem ersten Leerzeichen übernommen wird. z.b. der Ordner liegt unter "D:\\ISN AutoIt Studio" dann findest im CmdLine[1] lediglich "D:\ISN" und und CmdLine[2] dann erst den Rest des Pfades.

    Andy hat mir ein Schnitzel gebacken aber da war ein Raupi drauf und bevor Oscar das Bugfixen konnte kam Alina und gab mir ein AspirinJunkie.

  • Aso noch eine Anregung bezüglich meinem Punkt 5 (Startparameter):

    Ich finde es in Scite lästig, dass ich keine Möglichkeit habe Parameter pro Script zu speichern. Bedeutet konkret, dass sich Scite immer die zuletzt verwendeten Parameter merkt. Arbeite ich nun an einem anderen Script muss ich die Defaultparameter zum Testen neu eintippen. Sehr lästig, wenn man zum Testen öffter zwischen beiden Scripten wechseln muss.

    Was ich mir also wünschen würde wäre entweder eine Historie in der IDE selbst, die alle Parameter die ich jemals verwendet habe in auswählbaren Listen speichert (bevorzugt in Verbindung mit dem Scriptnamen), oder Alternativ das automatische einfügen einer Kommentarsektion im jeweiligen Quellcode, welche sofern vorhanden ausgelesen wird um die Startparameter festzulegen. So könnte man Änderungen an den Testparametern direkt im Quellcode machen. Was nun besser oder einfacher umzusetzen ist... keine Ahnung.

    Die Variante mit der Kommentar-Sektion hätte den Vorteil, dass die benötigten Parameter auch gleich dokumentiert wären. Problematisch wäre hingegen, dass das Parsing dieser Sektion bei manuellen edits evtl. fehlschlagen könnte.


    pandel:

    Danke für den Tipp, kannte ich noch nicht. Schau ich mir bei Gelegenheit mal an.

    Einmal editiert, zuletzt von misterspeed (5. März 2013 um 19:57)

  • Also zu euren letzten Meldungen:

    misterspeed:

    0. Quellcode
    Wird gefixt! Wobei zum Ausführen die aktuellste AutoIt Version benötigt wird!

    1. Projekt umbenennen
    Wird alles ab 0.92 BETA möglich sein!

    2. Projekteigenschaften ändern
    Ändern der Hauptdatei ist nur in der Projektverwaltung möglich. Daran wird sich nichts ändern.

    3. Skriptbaum
    Wird alles ab 0.92 BETA möglich sein!
    (Und das mit den aufgeklappten Elementen ist ein Bug...das sollte schon funktionieren)

    4. Projektbaum
    Sortierung wird ab 0.92 BETA geändert! (War ein eingriff in die TVExplorer.au3 nötig)

    5. Startparameter festlegen
    Ab 0.92 BETA wird es möglich sein unendlich viele Zeilen an Parametern anzugeben!
    Zusätzlich wird es ein neues Makro geben namens "Startparameter festlegen".
    So kannst du schnell und einfach die Parameter von Skript zu Skript wechseln wann immer du willst :)

    6. Alle Codesegmente zusammenklappen/aufklappen
    Wird alles ab 0.92 BETA behoben sein!
    Zusätzlich konnte ich endlich den komischen "ruckeln"-Bug beheben! :)

    Zu deinen Featurerequests: Die werden aktuell leider noch etwas warten müssen...(Zeitmangel)


    pandel:

    Ab 0.92 BETA wird es auch möglich sein im Formstudio handles mit Local oder Global zu deklarieren!


    Zum Abschluss bitte ich noch um ca. 1 Woche geduld bist zum nächsten Update! :P

  • Also ich weiss jetzt nich so ganz, ob das bereits angesprochen wurde: ich hab die "Mobile" Version auf meiner ext. HDD installiert und dort auch die autoit dateien entpackt (damit ich s auch in der schule brauchen kann), soweit läuft auch alles wie gewöhnlich- Das Problem ist nur, dass ich die Pfade für die AutoIt-Daten jedesmal anpassen muss, da der Laufwerksbuchstabe, den ich angegeben habe der von mir Zuhause (E:) ist, in der Schule ist dieser allerdings ein anderer und bei der Arbeit nochmals ein anderer. Für die Mobile Version wäre es doch aber viel praktischer, wenn der Pfad automatisch angepasst wird und vieleicht wäre es auch noch eine Überlegung wert, die benötigten Dateien gleich in die Installation miteinzubeziehen.

    Bild1: Ich beim debuggen

  • Eine andere MÖGLICHKEIT wäre, wenn man beim installieren schon die AutoIt-Pfade angibt und dann die Dateien direkt von dort auf den Stick/die HD kopiert werden...wäre bloss eine Idee ich hab meine Version sowieso immer dabei ;)

    Bild1: Ich beim debuggen

  • Version 0.92 BETA ist online!

    Changelog:

    --> ISN AutoIt Studio: <--
    -----------------------------------
    - Bugfix: Bugfixes im Ersteinrichtungsassistenten
    - Bugfix: Makierungs-Bug im Kontextmenü des Skripteditors entfernt
    - Bugfix: Nachträglich aufgeklappte Elemente im Skriptbaum bleiben nun wieder geöffnet wenn zb. gespeichert wird
    - Bugfix: Bugfix beim öffnen von Dateien mit einem Plugin (zb. Formstudio 2)
    - Bugfix: Scrollen im Skripteditor "ruckelt" nun nicht mehr! (Dafür benötigt die Datei beim ersten öffnen einen Augenblick länger um sich vollständig zu laden)
    - Bugfix: Im Projektbaum werden Dateien nun richtig sortiert
    - Bugfix: Wird im Skriptbaum ein Doppelklick auf ein Element durchgeführt wird dieses nun zentriert im Skript Editor angezeigt (vorher war es immer ganz unten)
    - Bugfix: Diverse Bugfixes
    - NEU: Dänische Sprache hinzugefügt (thx to Johnny Rex)
    - NEU: Die Funktion "Schütze geöffnete Dateien vor externen Veränderungen" kann in den Programmeinsellungen (unter Skript Editor) nun auf Wunsch deaktiviert werden. (Funktion macht bei einigen Usern Probleme)
    - NEU: Das ISN AutoIt Studio enthält nun das Debugging-Tool "DBUG"! Dieses kann über das Menü "Tools -> Debugging -> Erweitertes Debugging mit DBUG" aktiviert bzw. deaktiviert werden. Falls aktiviert wird es automatisch bei jedem Skriptstart aktiv! :) (thx an pandel für die Info!)
    - NEU: Fenster "Startparameter festlegen" überarbeitet! Es können nun beliebig viele Zeilen an Parametern angegeben werden!
    - NEU: Neues Makro mit dem Namen "Startparameter festlegen": Ändert die Startparameter des Projektes auf bestimmte Einträge. So kannst du (falls gewünscht) die Parameter schnell hin und her wechseln!
    - NEU: Beim Umbenennen eines Projektes wird nun abgefragt oder der Ordnername des Projektes auch umbenannt werden soll
    - NEU: Funktion "Alle Tabs schließen" hinzugefügt (Zu finden im Datei-Menü und im Kontextmenü eines Tabs)
    - NEU: Wird das ISN im Portable-Modus betrieben werden nun automatisch bei jedem Programmstart die Programmpfade (zb. zur Autoit3.exe) neu erkannt

    --> ISN Form Studio 2: <--
    -----------------------------------
    - Bugfix: Diverse Bugfixes
    - Bugfix: GUI muss beim Ändern der Formgröße in den "GUI Eigenschaften" nicht mehr neu geladen werden
    - NEU: Im Control Editor gibt es nun den Punkt "Text Modus". Hierdurch kann gewählt werden ob das Control den Text aus dem Formstudio (default) oder aus einer Func des Hauptskriptes erhält (zb. für Multilanguage Projekte)
    - NEU: In den GUI Eigenschaften kann nun definiert werden ob Handles im au3 Code mit Global oder Local deklariert werden sollen.

  • So ich denke ich brauch mal wieder eure Hilfe:

    Ich möchte im ISN in der "Autocompletebox" des Scripteditors auch Icons definieren (wie in SciTE4AutoIt)

    Hier ein Screenshot was ich meine:
    autoit.de/wcf/attachment/19887/


    Ich habe nun schon rausgefunden das sich dies mittels dem Befehl SendMessage($Sci, $SCI_REGISTERIMAGE, 1,$xpmfile) realisieren lässt.

    Nur gibts da ein Problem: Anstelle von $xpmfile soll man lt Scintilla Beschreibung (http://www.scintilla.org/ScintillaDoc.html#SCI_REGISTERIMAGE) den Inhalt eines XPM Icons laden...jedoch im "Format" const char *xpmData. Ich denke hier ist etwas wie "DllStructCreate" gemeint. Ich habe aber leider keinen Plan wie ich so eine DllStruct aufbaue bzw. darin den Inhalt eines XPM Icons übergeben kann...

    Vlt wisst ihr ja etwas Rat... Danke! 8)

  • Ich würde es einfach mal so probieren:

    [autoit]


    $tagXPMFile = "char filename[64];"
    $tXPMFileStruct = DllStructCreate($tagXPMFile)
    DllStructSetData($tXPMFileStruct, "filename", "Datei.test")
    ConsoleWrite("char filename: " & DllStructGetData($tXPMFileStruct, "filename") & @CRLF)
    ConsoleWrite("char *filename: " & DllStructGetPtr($tXPMFileStruct, "filename") & @CRLF)

    [/autoit]


    Also eine Struct nach dem Format "char filename[64];" erstellen, und dann den Return-Wert von DllStructGetPtr (Pointer, das bedeutet dieses * in der Beschreibung) übergeben... Also die Adresse des Strings.

    lg

  • Also eine Beschreibung des Formats findest du Hier. Scheint ziemlich einfach aufgebaut zu sein. Um das ganze an die Funktion zu übergeben gibt es zwei Möglichkeiten. Als erstes musst du einen String generieren und zwar mithilfe des Links von oben. Falls die Bilder schon existieren kannst du sie auch mit FileRead einlesen. Diesen kannst du dann so übergeben. Ich bin mir nicht sicher ob beide funktionieren aber mindestens eine sollte gehen.

    1.

    Spoiler anzeigen
    [autoit]

    $string = "Dein Bild..."
    $struct = DllStructCreate("char[" StringLen($string) + 1 "]")
    DllStructSetData($struct, 1, $string)
    SendMessage($Sci, $SCI_REGISTERIMAGE, 1, DllStructGetData($struct, 1))

    [/autoit]


    2.

    Spoiler anzeigen
    [autoit]

    $string = "Dein Bild..."
    SendMessage($Sci, $SCI_REGISTERIMAGE, 1, $string)

    [/autoit]


    Gruss Shadowigor

  • Freut mich, dass es funktioniert. Nur so aus Interesse. Welche Methode funktioniert denn jetzt? Ich habe diese Situation hier schon ein paar mal angetroffen, konnte es aber nie wirklich testen.

  • Ich habs jetzt so gelöst:

    [autoit]


    $string = FileRead(Pfad...)
    $struct = DllStructCreate("char["&StringLen($string)+1&"]")
    DllStructSetData($struct, 1, $string)
    SendMessage($Sci, $SCI_REGISTERIMAGE, 1, DllStructGetPtr($struct, 1))

    [/autoit]


    Läuft wie gesagt perfekt!

    Also ab der nächsten Version gibts dan schöne Icons in der Autocompletebox! :D

  • Seltsam...bei der Portablen Version hat nun das Automatische erkennen der Pfade genau 1x funktioniert...seither werden sie nicht mehr autom. erkannt, sondern gar komplett gelöscht. Kann mir allerdings nicht wirklich erklären, warum es trotzdem mal funktioniert hat 8| Mach ich i-was falsch? ^^

    Bild1: Ich beim debuggen

  • Hallo ISI360,

    bin ja fast wunschlos zufrieden ;-), aber wäre es möglich, daß die Pfadvariablen für die Makro Dateioperationen (%projectdir%, %scriptdir%,...) auch bei anderen Makrotypen gültig sind?

    Ich hab bspw. im Projektordner neben dem Autoitkrams auch z. B. ein Installscript von Inno Setup. Da wollte ich mir ein Makro einrichten, daß ich nachdem Kompilieren direkt den Installer erzeugen lassen kann. Leider komme ich nicht an das Installerscript, da ich Leerzeichen im Projektpfad habe, der Innosetup Compiler erwartet daher den Pfad in Anführungszeichen, aber immer, wenn ich im "Programm ausführen" Makro bei Parameter den Pfad in Anführungsstriche setze, haut mir ISN diese beim Speichern wieder raus. Daher dachte ich, ich könnts über die Variablen lösen, aber das geht auch nicht....

    Gruß
    Holger

  • OK das lässt sich machen :)
    Ich werds mit der nächsten Version ändern das da auch die Varaiblen unterstutzt werden...
    EDIT: Was genau hast du den Eingetragen in deinem Makro? Ich denke mal unter "folgendes Programm starten" den iss compiler und unter Parameter den Pfad zu deiner iss Datei oder?

    Achja und noch was: Da du mit ja den Tipp wegen dem DBUG-Tool gegeben hast:
    Aktuell gibts da ja noch ein paar Bugs wie zb. das "Run to Coursor" oder das mit der Breakpoint line. Evtl bin ich auch zu Doof um zu verstehen was diese Funktionen genau machen sollen aber aus meiner sicht funktionieren sie nicht.
    Daher: Vlt hast du lust auf Bugfixing? ^^
    Du brauchst eigentlich nur die Dbug.au3 im Data\Dbug Ordner editieren. Brauchst also nichts neu kompilieren o.Ä.
    Wäre cool wenn du Zeit hast :)

    Danke im Voraus! :)