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. Oscar

Beiträge von Oscar

  • Must Have Programme auf dem Rechner

    • Oscar
    • 28. März 2011 um 11:28

    Meine Lieblingsprogramme:

    Spoiler anzeigen


    Gekauft:
    - TotalCommander
    - PhotoLine
    - Avira Premium Security Suite

    Frei:
    - AutoIt, SciTE
    - Firefox v4 (AddOns: NoScript, Forecastfox Weather und ReloadEvery)
    - Thunderbird (AddOns: Display Mail User Agent, EnigMail, Deutsches Wörterbuch)
    - Miranda
    - DAEMON-Tools Lite
    - Rainlendar Lite
    - PopTray
    - IcoFX
    - IrfanView
    - Notepad++
    - VLC-Player
    - TeamViewer (private Nutzung)
    - HxD
    - KeePass
    - TrueCrypt
    - GnuPG

  • in bild button

    • Oscar
    • 22. März 2011 um 21:06

    @victor: Was hat DoodleJump damit zu tun? Beschreib doch mal vernünftig und nachvollziehbar was Du erreichen willst.

    Raupi : Ich habe ihm bereits in der SB ein funktionierendes Beispiel mit transparentem Label gepostet.

  • AutoBot initalisiert...

    • Oscar
    • 22. März 2011 um 18:59

    Du hättest vielleicht Post#7 von peethebee lesen sollen...

  • Computer-Info

    • Oscar
    • 21. März 2011 um 19:34

    Ja, eine Berichtsfunktion habe ich schon länger geplant. Momentan fehlt mir nur ein wenig die Zeit.

  • Computer-Info

    • Oscar
    • 21. März 2011 um 17:33

    Achso meinst Du das.
    Darauf bin ich überhaupt nicht gekommen. Ich hatte das Programm nur geschrieben, weil ich anderen öfter mal bei ihren PC-Problemen helfe.
    Aber ich werde das vielleicht noch ausblendbar machen. Danke für den Hinweis!

  • TCP-Chat

    • Oscar
    • 21. März 2011 um 17:28

    Na, dann schau mal hier: CryptChat

    ;)

  • Computer-Info

    • Oscar
    • 21. März 2011 um 17:12

    Skilkor: Der Wert bei der max. Datenbreite ist fehlerhaft. Das habe ich mittlerweile behoben (kommt mit der nächsten Version). Die anderen Daten kann ich nicht beeinflussen, da sie so von WMI zurückgeliefert werden.

    Script-Bär: Ich vermute mal, Du meinst, dass da der echte Produktkey steht? Ich verstehe allerdings nicht, warum das gefährlich sein soll?

  • Treeview in string/datei speichern

    • Oscar
    • 17. März 2011 um 06:57

    Er will ja ein TreeView. Da wäre das hier angebrachter:

    Spoiler anzeigen
    [autoit]


    #include <GuiTreeView.au3> ; erforderlich

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

    ; Beispiel Anfang
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <TreeViewConstants.au3>
    #include <WindowsConstants.au3>

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

    Global $sPath = @ProgramFilesDir
    Global $width = 800, $height = 600
    Global $hGui = GUICreate('Directory-Treeview-Beispiel', $width, $height, -1, 10)
    Global $hInput = GUICtrlCreateInput($sPath, 10, 10, $width - 160, 20, BitOR($ES_AUTOHSCROLL, $ES_READONLY))
    Global $hChoose = GUICtrlCreateButton('...', $width - 148, 9, 30, 22)
    GUICtrlSetFont(-1, 9, 600, 0, 'Verdana')
    Global $hIcons = GUICtrlCreateCheckbox('inkl. Dateien', $width - 100, 10, 80, 20)
    Global $bIcons = False
    Global $hTreeView = GUICtrlCreateTreeView(10, 40, $width - 20, $height - 70, BitOR($GUI_SS_DEFAULT_TREEVIEW, $TVS_CHECKBOXES), $WS_EX_STATICEDGE)
    GUICtrlSetFont(-1, 10, 400, 0, 'Arial')
    GUICtrlSetBkColor(-1, 0xF8F8F8)
    Global $hContextMenu = GUICtrlCreateContextMenu($hTreeView)
    Global $hInfo = GUICtrlCreateMenuItem('Informationen', $hContextMenu)
    Global $hExpand = GUICtrlCreateMenuItem('alles auseinanderfalten', $hContextMenu)
    Global $hCollapse = GUICtrlCreateMenuItem('alles zusammenfalten', $hContextMenu)
    Global $hStatus1 = GUICtrlCreateLabel('', 0, $height - 16, $width / 2, 16, -1, $WS_EX_STATICEDGE)
    Global $hStatus2 = GUICtrlCreateLabel('', $width / 2 + 1, $height - 16, $width / 2, 16, -1, $WS_EX_STATICEDGE)
    GUISetState()

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

    _TreeViewUpdate()

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

    While True
    Switch GUIGetMsg()
    Case $hChoose
    $sTmp = FileSelectFolder('Verzeichnis auswählen', '', 0, $sPath, $hGui)
    If Not @error Then
    $sPath = $sTmp
    GUICtrlSetData($hInput, $sPath)
    _TreeViewUpdate()
    EndIf
    Case $hIcons
    $bIcons = BitAND(GUICtrlRead($hIcons), $GUI_CHECKED) = $GUI_CHECKED
    _TreeViewUpdate()
    Case $GUI_EVENT_PRIMARYDOWN
    $aInfo = GUIGetCursorInfo($hGui)
    If $aInfo[4] = $hTreeView Then
    $oldGUIDataSeparatorChar = Opt('GUIDataSeparatorChar', '\')
    GUICtrlSetData($hStatus1, ' ' & StringReplace(_GUICtrlTreeView_GetTree($hTreeView), '\\', '\'))
    Opt('GUIDataSeparatorChar', $oldGUIDataSeparatorChar)
    If BitAND(_GUICtrlTreeView_HitTest($hTreeView, $aInfo[0] - 11, $aInfo[1] - 41), 64) Then
    $checked = _GUICtrlTreeView_GetChecked($hTreeView, _GUICtrlTreeView_GetSelection($hTreeView))
    _GUICtrlTreeView_SetBold($hTreeView, _GUICtrlTreeView_GetSelection($hTreeView), $checked)
    $hItem = _GUICtrlTreeView_GetFirstChild($hTreeView, _GUICtrlTreeView_GetSelection($hTreeView))
    If $hItem Then _MarkChildItems($hTreeView, $hItem, $checked)
    EndIf
    EndIf
    Case $hInfo
    $oldGUIDataSeparatorChar = Opt('GUIDataSeparatorChar', '\')
    $TempPath = StringReplace(_GUICtrlTreeView_GetTree($hTreeView), '\\', '\')
    Opt('GUIDataSeparatorChar', $oldGUIDataSeparatorChar)
    MsgBox(0, 'Informationen', $TempPath & @CRLF & 'Dateigröße: ' & FileGetSize($TempPath) & ' Bytes')
    Case $hExpand
    _ExpandAll($hTreeView)
    Case $hCollapse
    _CollapseAll($hTreeView)
    Case $GUI_EVENT_CLOSE
    Exit
    EndSwitch
    WEnd

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

    Func _MarkChildItems(ByRef $hTreeView, $hItem, $checked)
    Do
    $hNewItem = _GUICtrlTreeView_GetFirstChild($hTreeView, $hItem)
    If $hNewItem Then _MarkChildItems($hTreeView, $hNewItem, $checked)
    _GUICtrlTreeView_SetChecked($hTreeView, $hItem, $checked)
    _GUICtrlTreeView_SetBold($hTreeView, $hItem, $checked)
    $hItem = _GUICtrlTreeView_GetNextChild($hTreeView, $hItem)
    Until $hItem = 0
    EndFunc ;==>_MarkChildItems

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

    Func _ExpandAll($hTreeView)
    _GUICtrlTreeView_Expand($hTreeView)
    EndFunc ;==>_ExpandAll

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

    Func _CollapseAll($hTreeView)
    _GUICtrlTreeView_Expand($hTreeView, 0, False)
    EndFunc ;==>_CollapseAll

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

    Func _TreeViewUpdate()
    GUICtrlSetData($hStatus1, ' Bitte warten! Verzeichnis wird eingelesen...')
    GUICtrlSetData($hStatus2, '')
    $Timer = TimerInit()
    Local $aCount = _GUICtrlTreeView_CreateDirectory($hTreeView, $sPath, True, $bIcons)
    If Not @error Then
    $msg = ' Benötigte Zeit: ' & Round(TimerDiff($Timer) / 1000, 3) & ' sek.'
    $msg &= ' | ' & $aCount[1] & ' Datei(en) und ' & $aCount[0] & ' Verzeichniss(e)'
    GUICtrlSetData($hStatus1, ' Fertig.')
    GUICtrlSetData($hStatus2, $msg)
    EndIf
    EndFunc ;==>_TreeViewUpdate
    ; Beispiel Ende

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

    ;===============================================================================
    ; Function Name: _GUICtrlTreeView_CreateDirectory($hTreeView, $sPath, $bIcons, $bFiles)
    ; Description:: erstellt ein TreeView mit Verzeichnissen (+Dateien)
    ; Parameter(s): $hTreeView = ControlID/Handle des TreeViews
    ; $sPath = Verzeichnispfad, der dargestellt werden soll
    ; $bIcons = True = Icons werden angezeigt, False = keine Icons
    ; $bFiles = True = auch Dateien anzeigen, False = nur Verzeichnisse
    ; Requirement(s): #include<GuiTreeView.au3>
    ; Return Value(s): Array mit Anzahl der Verzeichnisse=[0] und Dateien=[1]
    ; 0 und @error = 1, wenn der Pfad nicht existiert bzw. kein Verzeichnis ist
    ; 0 und @error = 2, wenn das FileSystemObject nicht erstellt werden konnte
    ; Author(s): Oscar (http://www.autoit.de)
    ;===============================================================================
    Func _GUICtrlTreeView_CreateDirectory($hTreeView, $sPath, $bIcons = False, $bFiles = False)
    Local $hFileItem, $FolderColor = 0x0000FF, $aCount[2] = [0, 0]
    Local $hSearch, $hFile, $hTreeViewItem
    If Not StringInStr(FileGetAttrib($sPath), 'D') Then Return SetError(1, 0, 0)
    $sPath = FileGetLongName($sPath)
    If StringRight($sPath, 1) <> '\' Then $sPath &= '\'
    $hSearch = FileFindFirstFile($sPath & '*.*')
    If @error Then Return SetError(2, 0, 0)
    _GUICtrlTreeView_BeginUpdate($hTreeView)
    _GUICtrlTreeView_DeleteAll(GUICtrlGetHandle($hTreeView))
    $hTreeViewItem = GUICtrlCreateTreeViewItem($sPath, $hTreeView)
    GUICtrlSetColor(-1, $FolderColor)
    If $bIcons Then
    _GUICtrlTreeView_SetIcon($hTreeView, $hTreeViewItem, 'shell32.dll', 3, 2)
    _GUICtrlTreeView_SetIcon($hTreeView, $hTreeViewItem, 'shell32.dll', 110, 4)
    EndIf
    While True
    $hFile = FileFindNextFile($hSearch)
    If @error Then ExitLoop
    If StringInStr(FileGetAttrib($sPath & $hFile), 'D') Then
    _CreateDirectoryRecursive($sPath & $hFile & '\', $hTreeViewItem, $bIcons, $bFiles, $aCount)
    ElseIf $bFiles Then
    $hFileItem = GUICtrlCreateTreeViewItem($hFile, $hTreeViewItem)
    $aCount[1] += 1
    If $bIcons Then _GUICtrlTreeView_SetIcon($hTreeView, $hFileItem, 'shell32.dll', 0)
    EndIf
    WEnd
    _GUICtrlTreeView_EndUpdate($hTreeView)
    FileClose($hSearch)
    GUICtrlSetState($hTreeViewItem, $GUI_EXPAND)
    $oFSO = ''
    Return $aCount
    EndFunc ;==>_GUICtrlTreeView_CreateDirectory

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

    Func _CreateDirectoryRecursive($sPath, $ItemOld, $bIcons, $bFiles, ByRef $aCount)
    Local $hFolderItem, $hFileItem, $FolderColor = 0x0000FF
    Local $hSearch, $hFile, $hTreeViewItem, $sTmp
    $sTmp = StringTrimRight(StringMid($sPath, StringInStr($sPath, '\', 0, -2) + 1), 1)
    $hFolderItem = GUICtrlCreateTreeViewItem($sTmp, $ItemOld)
    GUICtrlSetColor(-1, $FolderColor)
    If $bIcons Then
    _GUICtrlTreeView_SetIcon($hTreeView, $hFolderItem, 'shell32.dll', 3, 2)
    _GUICtrlTreeView_SetIcon($hTreeView, $hFolderItem, 'shell32.dll', 110, 4)
    EndIf
    $aCount[0] += 1
    $hSearch = FileFindFirstFile($sPath & '*.*')
    If @error Then Return
    While True
    $hFile = FileFindNextFile($hSearch)
    If @error Then ExitLoop
    If StringInStr(FileGetAttrib($sPath & $hFile), 'D') Then
    _CreateDirectoryRecursive($sPath & $hFile & '\', $hFolderItem, $bIcons, $bFiles, $aCount)
    ElseIf $bFiles Then
    $hFileItem = GUICtrlCreateTreeViewItem($hFile, $hFolderItem)
    $aCount[1] += 1
    If $bIcons Then _GUICtrlTreeView_SetIcon($hTreeView, $hFileItem, 'shell32.dll', 0)
    EndIf
    WEnd
    FileClose($hSearch)
    EndFunc ;==>_CreateDirectoryRecursive

    [/autoit]


    Musst Du nur noch das TreeView Eintrag für Eintrag (rekursiv) durchlaufen und abspeichern.

  • Kontinuierliche Mausbewegung

    • Oscar
    • 15. März 2011 um 16:19

    Was soll das denn werden?
    Meist kann man das viel einfacher lösen.

  • Festplatten ausblenden / Einblenden ?

    • Oscar
    • 15. März 2011 um 04:14

    Aquaplant: Wenn der Wert nicht existiert musst Du ihn anlegen. Funktionieren tut das auch unter Win7 (getestet).

    Alina und chip haben ansonsten ja schon das Wesentliche genannt.
    Außer vielleicht noch ein Hinweis: Ein Neustart ist nicht zwingend notwendig. Es reicht den Explorer neuzustarten.

  • Gui mit mehreren "Seiten"

    • Oscar
    • 14. März 2011 um 19:53

    Ist hier heute große Ratestunde? :D

    Oder hast Du nur zufällig vergessen, Dein Skript zu posten? ;)

  • Skript abbrechen aber nicht beenden

    • Oscar
    • 14. März 2011 um 19:51

    Nun, vermutlich kann man das einfacher lösen, aber dazu müsstest Du schonmal Dein Skript posten. ;)

  • Festplatten ausblenden / Einblenden ?

    • Oscar
    • 14. März 2011 um 19:41

    Es gibt in der Registry einen Eintrag, mit dem man die Laufwerke ausblenden lassen kann.
    Mit diesem Key ist das möglich:

    [autoit]


    ; Im folgenden RegKey/Value sind die Laufwerksbuchstaben verzeichnet, die im Explorer ausgeblendet werden.
    ; Dabei steht Bit0 für Laufwerk "a:", Bit1 für "b:" usw.
    ; Ist das jeweilige Bit gesetzt, wird es ausgeblendet.

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

    ; 'HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer', 'NoDrives'

    [/autoit]


    Wenn Du Dir das anschauen möchtest, ich habe das in meinem Programm ("FileCommander") eingebaut.

  • hilfe bei ordnerpfad öffnen

    • Oscar
    • 14. März 2011 um 19:30

    Hmm...[Kristallkugel reib]...Welchen Ordnerpfad? Niederlegen? :?:^^

  • Winhttp und Lokalisten - Login

    • Oscar
    • 13. März 2011 um 21:42

    Verstösst gegen die AGB des Betreibers:

    Zitat


    5.3.2
    Keine Verwertung von Inhalten: Von anderen Mitgliedern auf bzw. im lokalisten-Netzwerk veröffentlichte Inhalte dürfen nicht kopiert, verbreitet oder anderweitig öffentlich zugänglich gemacht werden. Untersagt ist insoweit auch der Einsatz von Computerprogrammen zum automatischen Auslesen von Daten, wie z.B. Crawlern (alias Spider oder Bots etc.).


    [closed]

  • Letztes Änderungsdatum

    • Oscar
    • 13. März 2011 um 13:35

    Zum auslesen der Version würde ich InetRead verwenden. BinaryToString nicht vergessen!

  • Letztes Änderungsdatum

    • Oscar
    • 13. März 2011 um 13:21

    Bitte in Zukunft zeitnahe Doppelposts vermeiden und den Bearbeiten-Button benutzen.

  • In Datei Werte suchen und ändern ( Hex Datei )

    • Oscar
    • 13. März 2011 um 13:19

    Ok, stimmt! Man müsste noch prüfen, ob das Ergebnis von StringInStr - 1 = gerade ist. Bei ungerade ist es ein "falscher Treffer".

  • Letztes Änderungsdatum

    • Oscar
    • 13. März 2011 um 13:01

    Dann schau Dir mal FileGetTime an.

  • In Datei Werte suchen und ändern ( Hex Datei )

    • Oscar
    • 13. März 2011 um 11:20

    Beim benutzen von StringInStr mit einer Binärdatei (Mode 16) musst Du beachten, dass jeweils zwei Zeichen (Hex) ein Byte repräsentieren.
    Demzufolge musst Du das Ergebnis von StringInStr durch zwei teilen und außerdem noch 1 abziehen, weil die Datei bei Null beginnt und StringInStr aber 1 als erstes Zeichen ausgibt.
    Das Ganze sieht dann in etwa so aus:

    [autoit]


    $hFile = FileOpen(@ScriptDir & '\file.bin', 16)
    If $hFile <> -1 Then
    $sFile = FileRead($hFile)
    FileClose($hFile)
    $sFound = Hex(StringInStr($sFile, '08F70100') / 2 - 1)
    EndIf

    [/autoit]

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™