Dynamischen Variablennamen erstellen/verwenden

  • Hallo AutoIT Gemeinden,

    ich möchte gerne folgendes erreichen:

    1.Spalte Excel Tabelle auslesen, bis dort keine Wert mehr vorhanden ist
    Diesen Wert jeweils als "Anhängsel" für eine Variable nutzen (also sollte dann aus: $printername und dem Zellenwert aus der 1.Spalte und der jeweiligen Zeile zb.: $printernamesNDPR003 als Variablenname erstellt werden), darauf aufbauend einen Button mit dem Wert der Variable zeichnen

    In einer While/Select Case Schleife die Buttons abfragen, wobei die ich hier die oben erstellte Variable+das "Anhängsel" abfragen möchte, um nicht 25x die Abfrage für jeden Button wiederholen zu müssen.

    Hier mein Code, ich denke, hierdurch wird dies deutlicher:

    Ich habe das Prinzip der Arrays glaub ich noch nicht ganz verstanden - wahrscheinlich liegt hier die Lösung.

    Kann mir jemand einen Tipp geben, wie ich das oben beschriebene ToDo in AutoIT umsetzen kann?

    Joe

  • Hi Mega,

    ich habe dies Sache nun mit einer csv Datei, die in in Array eingelesen wird, aufgebaut - das Problem ist aber nach wie vor das Selbe:

    Ich lese die 1.te Zeile/1.Spalte des Arrays aus, in dem ein Name steht. Dieser Name wird in einer Variable gespeichert, diese wiederum wird als Text in einem Button verwendet.
    In einer Schleife lese ich die restlichen Zeilen aus (immer nur die 1.te Spalte) und möchte nun pro ausgelesenem Wert eine Button erstellt haben, den ich in einer späteren While Schleife abfragen kann, damit dann eine Aktion stattfindet.

    Ich möchte also eine dynamsiche Variable haben:

    (ich weiss nicht, ob dies überhaupt so möglich/sinnvoll ist)

    Ich möchte unten in der While 2 Schleife einmalig eine Abfrage der Variable $buttonNames reinschreiben, je nach dem, welcher Wert da nun drin steht (welcher Button gedrückt wurde), soll eine bestimmte Aktion durchgeführt werden (in diesem Fall im Array nach dem Namen des gedrückten Buttons suchen und die restlichen Spalten der gefundenen Zeile je einer Sys-Variablen zuordnen)

  • Hier der Code vom Script:

    Hier der Inhalt der (noch recht leeren) csv Datei mit dem Namen mappe1.csv

    Code
    'NDPR003';'\\ndps01.domain\ndpr003';'\\ndps02.domain\ndpr003';'\\domain\admin\packages\driver\printer\HPLJ4050PCL6\hpbf002i.inf';"""HP LaserJet 4050 Series PCL 6""";'\\HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\';'\\HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Ports';'\\HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\''NDPR003';'%windir%\dmIT\%DATE%_%PrnDisplayName%.log';'haus3  Raum 002';'pbw';'\\domain/admin/Packages/SETUP/PrinterInstall/Resources/Pics/HPLJ4050.jpg'
    'NDPR005';;;;;;;;;;;
    'NDPR010';;;;;;;;;;;

    Es soll also pro ausgelesem Druckernamen ein Button in der GUI angezeigt werden, bei gedrücktem Button sollen je nach gedrücktem Button für diesen speziellen Drucker Systemvariablen gesetzt werden, dessen Werte in den jeweiligen Spalten 2-12 im Array stehen.

    Danke schon mal für Deine Unterstützung

    Joe