Array-Deklarierung

  • Hallo!

    Ich habe Probleme mit der Deklarierung eines Array (zumindest sagt mir das die Fehlermeldung).

    Code
    $a1[0]=$coord[0]+66
    $a1[0]=$coord^ERROR
    
    
    Error: Subscript used with non-Array variable.
    [autoit]

    Dim $a1[1]
    Dim $a2[1]
    Dim $a3[1]
    Dim $a4[1]

    [/autoit][autoit][/autoit][autoit]

    $a1[0] = $coord[0]+66
    $a2[0] = $coord[0]+66
    $a3[0] = $coord[0]+66
    $a4[0] = $coord[0]+66
    $a1[1] = $coord[1]+335
    $a2[1] = $coord[1]+388
    $a3[1] = $coord[1]+441
    $a4[1] = $coord[1]+494

    [/autoit]

    Ich kann mir gut denken, dass ich da was vertauscht habe mit dem "Dim" aber egal, nach welchen Tutorials/Helpfiles ich das deklariere es kommt immer die gleiche Fehlermeldung.


    Etwas unwichtiger, aber dennoch ziemlich nervig, will ich eine *.exe datei öffnen die auf dem Netzwerk liegt, kann man das irgendwie per Netzwerk öffnen oder muss ich diesen Ordner auf meinen PC ziehen?

    Spoiler anzeigen

    Func qtime()

    DirCopy( "\\evzs221\G$\APPS\Player\Quicktime", "C:\swtemp\qtime")
    $folder = DirGetSize("C:\Programme\QuickTime") ;Installationsordnergrösse

    If $folder < 300 then ;Installationsordnergrösse bestimmt ob installiert oder nicht
    Run(@ScriptDir & "\swtemp\qtime\QuickTimeInstaller.exe")
    WinWaitActive("QuickTime für Windows")
    Send("!w")
    WinWaitActive("QuickTime für Windows", "Lizenzvertrag")
    Send("!j")
    WinWaitActive("QuickTime für Windows", "Dieses Installationsprogramm")
    Send("!i")
    WinWaitActive("QuickTime für Windows", "QuickTime wurde erfolgreich auf Ihrem")
    Send("!f")
    WinWaitActive("QuickTime für Windows", "Weitere Informationen")
    Send("{TAB}")
    Send("{ENTER}")
    Else
    call("vlc")
    EndIf

    call("vlc")
    EndFunc

    Kann mir da jemand weiterhelfen?

    Grüsse,
    Eure Kinti

  • Hallo,

    Hallo!

    Code
    $a1[0]=$coord[0]+66
    $a1[0]=$coord^ERROR
    
    
    Error: Subscript used with non-Array variable.

    Der Pfeil ^ zeigt auf das Problem - $coord ist nicht deklariert und deswegen die Fehlermeldung.


    Hier wirds weitere Probleme geben. Du deklarierst die Arrays mit einer Dimension "Dim $a1[1]" und verwendest dann allerdings zwei Dimensionen "$a[0] und $a[1]"

    Zum zweiten Problem kann ich gerade leider nichts sagen.

    Grüße Stilgar

  • juchu! danke vielmals!

    meine güte hab jetzt über 2 stunden damit verbraten beim $a-Array zusuchen... -.-

    Gruss,
    Kinti

    Edit: ne, jetzt hängts einfach bei der deklarierung bei $coord[0] und [1].... ich glaube ich muss da was sowieso komplett ändern :)

    Einmal editiert, zuletzt von Kinti (7. Mai 2009 um 11:31)

  • Warum? Geht doch so weit:

    Spoiler anzeigen
    [autoit]

    Dim $a1[2]
    Dim $a2[2]
    Dim $a3[2]
    Dim $a4[2]
    Dim $coord[2]

    [/autoit] [autoit][/autoit] [autoit]

    $a1[0] = $coord[0]+66
    $a2[0] = $coord[0]+66
    $a3[0] = $coord[0]+66
    $a4[0] = $coord[0]+66
    $a1[1] = $coord[1]+335
    $a2[1] = $coord[1]+388
    $a3[1] = $coord[1]+441
    $a4[1] = $coord[1]+494

    [/autoit]


    auch wenn mir nicht klar ist, was du vorhast :)

  • eigentlich ist es ganz einfach, und zwar haben wir auf der Arbeit ein Tool, das mir verschiedene Farben anzeigt je nach metalldicke und daher wäre es ganz super wenn man nur die ganz dünnen Platten(green) automatisch gleich draufklickt, während es bei den Dickeren (steht eine Zahl drauf und ist red) eine Bestätigung verlangt.

    aber langsam komm ich dahinter :)

    Grüsse,
    Kinti

    Edit: Aber irgendwie scheint mir das nicht zu liegen mit dem Array, kommt immer noch die selbe Meldung...

    Einmal editiert, zuletzt von Kinti (7. Mai 2009 um 17:42)

  • Das Script von Stilgar stimmt aber weil bei mir kommt auch keine Fehlermeldung