1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. crdy

Beiträge von crdy

  • Active Directory Funktionen - Neue Version 1.5.0.0 freigegeben!

    • crdy
    • 6. März 2014 um 09:47

    oh... ich hab da was überlesen gehabt...

    in _AD_SamAccountNameToFQDN steht ja das für Computername das $ zeichen mitgegeben werden muss...

    e.g. Global $IObject = GuiCtrlCreateInput(_AD_SamAccountNametoFQDN(@UserName)
    wird zu
    Global $IObject = GuiCtrlCreateInput(_AD_SamAccountNametoFQDN(@ComputerName & "$")

    Dann klappts auch mit dem Nachbarn.

    danke für die Hilfe.

    Gruß

  • Active Directory Funktionen - Neue Version 1.5.0.0 freigegeben!

    • crdy
    • 5. März 2014 um 11:53

    Hi,
    ich habe folgendes Scenario und hoffe das ihr mir dabei helfen könnt.

    Wir haben eine Produktionsnetz und ein Entwicklernetz.
    Momentan haben beide Netze den gleichen Computernamen aufbau. Pxxxxx
    Nun möchten wir ganz gerne die P-Namen im E-Netz auf Exxxxx umbenennen.
    Ich denke am Client selber sollte dies relativ schnell machbar sein. Doch in der AD stehe ich noch auf dem Schlauch.

    Ich habe daher gegoogled und bin in diesem Thread gelandet.

    Weiterführend habe ich dann _AD_RenameObject gesehen und dachte das dies ja helfen würde. Doch soweit ich das jetzt verstanden habe, kann ich da nur User Objecte umbennenen. Ist dies korrekt?

    Gibt es evtl. mit den vorhandenen Scriptbausteinen eine möglichkeit den Computernamen abzuändern?

    Vielen Dank für eure Mühen

    crdy

  • _XMLGetValue XMLDomWrapper

    • crdy
    • 14. März 2013 um 10:09

    Soooo...

    erstmal danke chess und sorry für meine absolute Dummheit...

    für alle die hier lesen weil sie ähnliche Probleme habe...

    schaut mal nach ob ihr umlaute im Text habt.
    wenn ihr umlaute habt, macht entweder daraus ö = oe ODER
    öffnet die xml im Notepad geht auf speichern unter/save as und speichert den Kram als UTF-8 ab...

    und dann muss im xml file noch so aus sehen
    <?xml version="1.0" encoding="utf-8"?>

    wenn es dann nicht funktioniert habt ihr ein anderes Problem als ich.

  • _XMLGetValue XMLDomWrapper

    • crdy
    • 12. März 2013 um 15:09

    ok das hab ich wirklich überlesen... asche auf mein Haupt...
    ich komm mir durch meine unfähigkeit grad vor wie ein Kindergartenkind...
    dennoch.

    ich habe mal das Array überdimensionie Dim $story[10]

    hab dann wie oben mit $story =_XMLGetValue("/root/Settings/Start")
    zugewiesen und mit isArray überprüft ob es ein array ist.

    zack kein array...

    ich mach hier glaub ich grundlegend was Falsch...

    ich hatte es jetzt so verstanden, das _xmlGetValue sich ähnlich verhält wie _FileReadToArray sehe ich das falsch?

    Sorry wenn ich mich hier total blöd anstelle...

  • _XMLGetValue XMLDomWrapper

    • crdy
    • 11. März 2013 um 17:12

    Sers,
    ich geh hier mal wieder am Stock...

    XML
    <?xml version="1.0"?>
    <root>
       <Settings>
          <Start>
          	Text
          </Start>
        </Settings>
    </root>


    Das ist meine xml mit dem tollen namen test.xml

    [autoit]


    $xFile = @ScriptDir&"\Data\test.xml"
    $XMLopen = _XMLFileOpen($xFile)
    ConsoleWrite("Debug: $iRET = " & $XMLopen & @LF & @error & @LF & @Extended)
    $story = _XMLGetValue("/root/Settings/Start")
    ConsoleWrite("Debug-Value: "& $story& @LF & @error & @LF & @Extended)

    [/autoit]


    Alles Laut Error code von XMLDomWrapper findet er den node nicht... ich habe es auch schon vor root das / weggelassen und auch ganz ohne den root node nur mit Settings/Start... aber nix will...
    Ich sehe den grund des Fehlers nicht.

    hat jemand eine Idee?

  • ListviewItem nach best. Spalte sortieren

    • crdy
    • 23. Januar 2013 um 10:33

    Skilkor erstmal danke für deine Mühen. :)
    um ehrlich zu sein, finde ich das ganze sortieren mehr kompliziert als nötig egal welchen ansatz man nimmt. ;)

    ich möchte ja nur abfallend auf eine spezielle spalte sortieren und zwar nachdem ich das listview erstellt habe. Nicht erst wenn ich Spaltenkopf angeklickt habe.
    einen ähnlichen Ansatz wie von dir hatte ich Schonmal in der Mangel. aber wenn ich die while schleife einfach wegnehme und es so schreibe

    [autoit]

    _GUICtrlListView_RegisterSortCallBack($ListView)
    GUISetState(@SW_SHOW,$hGui)_GUICtrlListView_SortItems($ListView, 8) ; 8 ist die letzte spalte

    [/autoit]

    passiert einfach mal garnichts.

    oh Danke Bug... :)

  • ListviewItem nach best. Spalte sortieren

    • crdy
    • 23. Januar 2013 um 09:54

    *buddel*

    ewig gebraucht... wegen eigener Unfähigkeit geweint...

    [autoit]

    Global $B_DESCENDING[_GUICtrlListView_GetColumnCount($hListView)] ; Variable ist erforderlich für die Sortierrichtung

    [/autoit][autoit]

    Local $B_DESCENDING[_GUICtrlListView_GetColumnCount($current)]
    _GUICtrlListView_SimpleSort($current, $B_DESCENDING, 8)

    [/autoit]


    ich hab gerade nicht einmal eine Idee wie ich die Sortierreihenfolge umdrehen kann... So sortiert es 0 1 2 3 also aufsteigend ich würde nur gerne 3 2 1 0 sortieren also absteigend.

    gruß

  • Aus Function GuiGetMsg() beeinflussen

    • crdy
    • 10. Januar 2013 um 14:13

    Du hast vom Prinzip her natürlich Recht.

    Dennoch glaube ich nicht das mich das zur Lösung bringt.

    ich hole mal etwas weiter aus.

    Ich habe eine Main Gui in der ich unteranderem mehrere Tabs habe in denen Listviews enthalten sind. Ich habe es hinbekommen via switch case das wen ich die Tabs aufrufe immer die alte Listview destroyed wird und neu aufgebaut wird quasi "Aktualisiert"

    Weiterhin kann ich wenn ich eine Zeile auswähle diese in einer neuen Gui Editieren und zurückschreiben. Sobald sich die neue Gui schließt möchte ich das es sich verhält als ob ich den tab gewechselt habe. Quasi Darum die Frage ob ich GuiGetMsg() etwas mitteilen kann.

    :wacko:

    Ist das nachvollziehbar was ich machen will?

    Edit*
    Flag setzen... super idee :) ich setz mich mal dran und melde dann ob ich geschaft habe.
    Danke.

    Edit**
    Mit nem Flag funktioniert es. Super vielen Dank :)

  • Aus Function GuiGetMsg() beeinflussen

    • crdy
    • 10. Januar 2013 um 13:48
    Spoiler anzeigen
    [autoit]

    Func _Gui

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

    gui....

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

    While 1
    $nMsg = GuiGetMsg()
    Switch $nMsg
    Case 1
    MsgBox(0,"","tadaa")
    Case 2
    _Func2()
    EndSwitch
    WEnd

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

    EndFunc ;==>_Gui

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

    Func _Func2()

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

    do something
    Return(1)
    EndFunc

    [/autoit]


    Sers
    Der code oben stellt verkleinert das da was ich möchte.
    Ich rufe per button die Func2 auf welche etwas macht und dann in Case 1 reingehen soll.
    Allerdings weiß ich nicht wie ich GuiGetMsg() das mitteilen kann bzw dem Switch.

    Einer ne idee?

  • WMI SMS cache size ändern

    • crdy
    • 14. Dezember 2012 um 17:44

    Servus... Ich mal wieder mit dem drecks SMS und WMI geschmuse da -.-
    Ich habe diesen vb code und möchte den ganz gerne in AutoIT haben.

    Spoiler anzeigen


    If iCacheSize < CACHESIZE_MB Then

    CreateObject("UIResource.UIResourceMgr").GetCacheInfo.TotalSize = CACHESIZE_MB

    End If

    Das hier ist mein Ansatz. Es sollte auf einer Remote maschine funktionieren. Muss ich vorher mit ObjGet("winmgmts://" & $PC & "/root/ccm") mich erst "verbinden"

    Spoiler anzeigen
    [autoit]

    $iCacheSize = ObjCreate("UIResource.UIResourceMgr")
    $iCacheSizeInfo = $iCacheSize.GetCacheInfo.TotalSize
    MsgBox(0,"",$iCacheSize)
    If $iCacheSizeInfo < "1000" Then
    $iCacheSizeInfo = "1000"
    EndIf

    [/autoit]


    Da macht er zumindest nix...
    Wenn ich das z.B. über das SCCM Client Center mache, dann startet der immer den CCM dienst neu. fehlt evtl. der schritt?
    ich bin für jede Hilfe dankbar.

    Gruß

  • OLE/COM WMI abfrage SMSSiteCode einstellen

    • crdy
    • 12. Dezember 2012 um 11:03

    Hallo,

    ich gehe langsam am Stock und hoffe das ihr mir weiterhelfen könnt.

    Ich möchte per AutoIT den SMS SitCode auf PCs einstellen.

    Ich sehe nicht wo der Fehler ist. in einem anderen Thread aus dem Englischen Forum hatte ich diesen beitrag gefunden

    http://www.autoitscript.com/forum/topic/14…s/#entry1020531

    und denke das ich eigentlich keinen Fehler habe.

    trotzdem bekomme ich immer den Fehler

    Code
    ==> The requested action with this object has failed.: 
    $oSms.ExecMethod("SMS_Cient", "SetAssignedSite", $oSmsParams.sSiteCode) 
    $oSms.ExecMethod("SMS_Cient", "SetAssignedSite", $oSmsParams.sSiteCode)^ ERROR

    Ich bin für jede Hilfe dankbar.

    [autoit]

    $SMSSite = "CCC"
    $oSms = ObjGet("winmgmts://Rechnername/root/ccm")
    $oSmsClient = $oSms.Get("SMS_Client")
    $oSmsParams = $oSmsClient.Methods_("SetAssignedSite").inParameters.SpawnInstance_()
    $oSmsParams.sSiteCode = $SMSSite
    $oSms.ExecMethod("SMS_Cient", "SetAssignedSite", $oSmsParams)

    [/autoit]

    Edit...
    man sollte Client auch mit L schreiben... funzt jetzt

  • Array variable has incorrect number of subscripts

    • crdy
    • 21. November 2012 um 08:39

    Getested und Funktioniert.

    Vielen dank für die ausführliche Antwort. Obwohl es so logisch und offensichtlich ist, wäre ich darauf glaub ich heute nicht gekommen.

    kudos. :)

    gruß

  • Array variable has incorrect number of subscripts

    • crdy
    • 21. November 2012 um 08:24

    Hi,

    also eigentlich steht schon alles unten...
    ich sehe nur meinen verdammten fehler nicht.
    Im Combo feld steht z.B. Test 2 und in der Datei Test 1-4 wenn er das durch geht und Test 2 findet soll er den Eintrag löschen...
    evtl gehe ich das ganze auch total falsch an und schieße von hinten durch die Brust ins Auge... Sollte wer eine andere Lösung haben wääre ich trotzdem mit dank verbunden wenn mir einer sagen kann wo der unten stehende Fehler her kommt.

    vielen dank

    Gruß

    [autoit]


    Local $aLines
    $sfile = ("C:\Programme\TTimeTrack\WBS\WBS.txt")
    _FileReadToArray($sfile, $aLines)

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

    For $i = 1 To Ubound($aLines,) -1
    If StringInStr($aLines[$i], GUICtrlRead($Combo1)) Then

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

    _ArrayDelete($aLines,$i)

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

    EndIf
    Next
    _FileWriteFromArray($sfile, $aLines, 1)

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

    Error:

    (456) : ==> Array variable has incorrect number of
    subscripts or subscript dimension range exceeded.:


    If StringInStr($aLines[$i], GUICtrlRead($Combo1)) Then If
    StringInStr(^ ERROR


    ->08:18:53 AutoIT3.exe ended.rc:1

  • Wert an autoit script bei laufzeit übergeben

    • crdy
    • 10. August 2012 um 09:59

    Super,

    macht was es soll vielen Danke :)

    gruß
    crdy

  • Wert an autoit script bei laufzeit übergeben

    • crdy
    • 10. August 2012 um 08:23

    Hallo,

    ich habe folgendes vor.
    ich habe ein AutoIT Script in dem ich überprüfen möchte ob ein Benutzer an einem PC angemeldet ist.

    Wir machen das an anderen stellen mit einer kleinen batch-datei und folgendem code

    Code
    tasklist.exe /S %PCNAME% /V | %SystemRoot%\system32\find.exe /i "explorer"
    if /i not  %errorlevel%.==0. (
    echo..*Kein Explorer-Task gefunden.
    ) else (
    rem goto done
    )

    Jetzt stehe ich nur vor der frage wie rufe ich das aus, um den richtigen rückgabewert zu erhalten.

    Wenn ich es wie folgt auf rufe

    [autoit]

    if RunWait("tasklist.exe /S "&$PCNAME&" /V | \\"&$PCNAME&"\system32\find.exe /i 'explorer'") = True Then
    msgbox(0,"","User ist angemeldet, ABBRUCH")
    Return
    Endif

    [/autoit]

    Dann bekomme ich immer true zurück.

    Jetzt habe ich mir überlegt ob ich es evtl als cmd line ausführe und von da einen Wert erhalte. Jedoch hab ich keine Idee wie ich den Wert an mein autoit script zurückgeben kann.

    ich bin der Meinung das ich es mit

    [autoit]

    RunWait(@Comspec & "tasklist.exe /S "&$PCNAME&" /V | \\"&$PCNAME&"\system32\find.exe /i 'explorer'")

    [/autoit]

    aufrufen kann,
    und auch mit

    [autoit]

    _RunDos("tasklist.exe /S "&$PCNAME&" /V | \\"&$PCNAME&"\system32\find.exe /i 'explorer'")

    [/autoit]


    wie gesagt fehlt mir bei allen Lösungsansätzen der weg zurück da der exitcode und auch der errorcode immer 0 sind.

    Ich wäre echt dankbar, wenn mich jemand in die richtige Richtung schubsen könnte.

    Viele Grüße
    crdy

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™