Hallo AutoIt'ler!
Ich stehe an, verstehe nicht wo der Unterschied ist und bin schon recht verzweifelt
Zuerst das kleine Script:
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Icon=Icons\Control_Panel.ico
#AutoIt3Wrapper_Change2CUI=y
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <ActiveDirektory_UDF/AD.au3>
#include <advfha_proc.au3>
#include <array.au3>
#include <Constants.au3>
Local $skz
Local $user
$skz = $cmdline[1]
$user= $cmdline[2]
ConsoleWrite ("SKZ : " & $skz & @tab & StringLen($skz) & @CRLF)
ConsoleWrite ("User: " & $user& @tab & StringLen($user) & @CRLF)
_AD_Open()
$alle_gruppen = _AD_RecursiveGetMemberOf($user, 10, 1, false)
_AD_Close()
for $i = 1 to ubound ($alle_gruppen) -1
if StringInStr (gettok ($alle_gruppen[$i], "|" , 1), $skz) Then
ConsoleWrite (gettok ($alle_gruppen[$i], "|" , 1) & @CRLF)
EndIf
Next
Alles anzeigen
Was soll es tun: Ich frage mit Hilfe der AD_UDF einen Domainuser ab in welche Gruppe er ist. Das Ganze soll als Commandline-Programm verwendet werden. Um das typische "DOS" feeling zu haben
Zu dem Eigenlichen Problem: Nach dem Compilieren rufe ich das Programm in der Console mit zwei Parameter auf: Programm.exe Parameter1 Parameter2
Die beiden Parameter lasse ich mir zur Sicherheit auch noch ausgeben mit der Stringlänge (Zeile 17 und 18). Bis hier her ist alles OK. Aber ich bekommen keine Daten in das Array $alle_gruppen.
Schreibe ich in das Script hardcodet die Parameter (ab Zeile 16)
funktioniert die Abfrage und ich bekomme eine lange Liste an Gruppeninformationen. Die Consolenausgabe (Zeile 16 und 17) ist exakt die Selbe als würde ich Parameter übergeben!
Ich habe schon Probiert Leerzeichen an die Parameter anzuhängen, ich überprüfte mit _arraydisplay den Inhalt von $cmdline - alles OK
Was mache ich da falsch da?
lg
Racer