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

Beiträge von AnnaM

  • Ini-Datei vor Lesern schützen

    • AnnaM
    • 25. September 2012 um 16:24

    Naja, dann muss ich mal schauen, was ich mache. Trotzdem danke.
    Lieben Gruß,

  • Ini-Datei vor Lesern schützen

    • AnnaM
    • 24. September 2012 um 21:27

    Das klinkt ja echt klasse.
    Wenn es dir nicht so viel mühe macht, könntest du mir ein Beispiel geben, wie ich in diese Datei schreiben und lesen kann?
    So wie in einer ini?

    Vielen Dank :_)

  • Ini-Datei vor Lesern schützen

    • AnnaM
    • 24. September 2012 um 13:00

    Hmm, aber wie machen das große Firmen?
    Wo speichert man dann Konfigurationen am Besten? Und vor allem wie?
    Das verschlüsseln ist ja dann nicht so gut, wenn mans auslesen kann :-/

    [ offen ] .INI Datei verschlüsseln

    Also das zum Thema verschlüsseln. hmm.
    Vor allem, wenn es verschlüsselt ist, wie schaffe ich ein speichern wieder in die richtige Sektion und das auch noch verschlüsselt? ?(

  • Ini-Datei vor Lesern schützen

    • AnnaM
    • 24. September 2012 um 11:09

    Hallo Zusammen :)

    ich habe eine Frage, weiß aber nicht, wie man es genau nennt.
    Ich speichere momentan meine Daten, die ich für mein Programm brauche in einer Ini.
    Das Problem ist, dass der User diese Datei mit einem Editor öffnen kann und manipulieren kann.
    Somit kann es auch möglich sein, die Einstellungen über die Ini zu tätigen, anstatt von der GUI aus.
    Auch ein Fehlablauf des Programms kann hier durch Änderung der Ini ausgelöst werden.
    Ich habe zwar schon viele Dinge abgefangen, doch nun will ich diese Quelle ausschließen.

    Wie mache ich dieses am Besten? Verschlüsseln? Oder gibt es eine andere Dateiart oder sowas?
    Ich meine, der Vorteil einer Ini ist natürlich, dass diese sich leicht auslesen und bearbeiten lässt.

    Ich hoffe ihr habt hier eine Idee.
    Ich bin heute darauf gekommen, da ich meine ganzen Bilder nun in eine dll speichere :)

    Lieben Gruß und vielen Dank,
    Anna

  • Daten über das Internet senden

    • AnnaM
    • 27. Juli 2012 um 15:19

    Hallo,

    das Problem ist hier, dass die .ini mal größer und mal kleiner ausfällt. Je nach Nutzer. Deshalb wollte ich es als Datei schicken.

  • Daten über das Internet senden

    • AnnaM
    • 26. Juli 2012 um 22:00

    Hallo,

    also das senden mit der Post-Variablen habe ich raus. Ganz einfach :)

    [autoit]


    $sPost = "var1=inhalt&var2=inhalt2"
    $sResult = _WinHttpSimpleRequest($hConnect, "POST", "/input.php", Default, $sPost)

    [/autoit]

    Aber wie ich das nun mit einer Datei mache?
    Man könnte es binär umformen und dann senden, aber ob das so schlau ist?

  • Daten über das Internet senden

    • AnnaM
    • 26. Juli 2012 um 21:14

    Hallo name22,

    danke für deine Antwort. Ich habe mir gerade die Hilfedatei angeschaut, aber ich habe keine Ahnung, wie ich so etwas integriere und wie dann der Server dafür aussehen muss.
    Also wenn du ein kleines Beispiel hättest, wäre ich dir dankbar. Ich arbeite mich gerade durch das Forum und schau schon, wie es umgesetzt wird.
    Ich kenne es bis jetzt noch nicht. Ich schau mal und melde mich wieder :)

    Vielen Dank schon einmal für den Tipp. *gg*

  • Daten über das Internet senden

    • AnnaM
    • 26. Juli 2012 um 20:04

    Hallo Zusammen,

    ich habe ein Programm für einen Kunden geschrieben, welches nun auch eine "Fehler-Senden"-Funktion bekommen soll, falls es mit dem Programm Schwierigkeiten gibt.
    Zur Zeit habe ich es so realisiert:

    Spoiler anzeigen
    [autoit]


    If MsgBox(0x4 + 0x40 + 0x40000, $ProgName, "Wollen Sie ein Debug-Protokoll an den Administrator schicken?" & @CRLF & "Sie helfen hiermit das Programm bei Fehlern zu verbessern.",0,$hGUI) = 6 Then
    Local $hnet_senden = InetRead("https://www.........../php.php?check1=" & $var1 & "&check2=" & $var2 & "&check3=" & $var3 & "&check4=" & $var4 & "&check5=" & $var5 & "&check6=" & "code")
    InetClose( $hnet_senden)
    EndIf

    [/autoit]


    Danach fängt die PHP-Seite den Link ab, prüft ob er valide ist und speichert die angegangenen Daten in eine Datenbank.
    Leider ist es mir schon passiert, dass sich das Programm beim Senden verabschiedet hat :thumbdown:
    Auch kann es sein, das auf einem Client kein Internet Explorer installiert ist, der aber für die Funktion (InetRead) vorgesehen ist.
    Dieses sind Probleme für das Debug-Protokoll.

    Als weiteren Punkt soll auch die dazugehörige ".ini"-Datei verschickt werden, die alle Einstellungen gespeichert hat.
    Ich dachte erst, ich kann es per E-Mail-Funktion lösen, doch dann müsste ich alle "smtp"-Einstellungen wie auch das Passwort hinterlegen,
    welches sich bestimmt mit einem Hex-Editor oder so etwas auslesen lassen könnte. Das weiß ich nicht!

    Ich hoffe ihr könnt mir wenigstens zum Punkt 1 helfen. Gibt es da eine andere Vorgehensweise oder eine bessere Übertragung der Daten?
    Zumal eine URL ja auch nicht unbegrenzt lang sein darf.

    Lieben Gruß, Anna :party:

  • Netzwerkadresse übersetzen

    • AnnaM
    • 2. Juli 2012 um 21:55

    ah ok ^^ supi. War also nur eine Kleinigkeit.
    Dankeschööön.

  • Netzwerkadresse übersetzen

    • AnnaM
    • 2. Juli 2012 um 21:47

    Hallo,

    schön, dass du mir geantwortet hast, doch leider bringt mir die Antwort keine Antwort :)

    Ich habe einen Netzwerkpfad. z.B. "\\SLaptop\Users". Dieses Gerät befindet sich irgendwo im Netzwerk.
    Nun will ich wissen, welche IP dieses Gerät hat.
    Und wenn ich

    [autoit]


    TCPStartup() ; <!-- wichtig
    msgbox(0,"IP???",TCPNameToIP("\\SLaptop\Users"))
    TCPShutdown()

    [/autoit]


    eingebe, geht es nicht.

  • Netzwerkadresse übersetzen

    • AnnaM
    • 2. Juli 2012 um 17:58

    Hallo Zusammen,

    ich stehe vor einem Problem, wie ich eine IP-Adresse herausfinde. Ich habe hier nur den Netzwerkpfad z.b. "\\SLAPTOP\Users".
    Ich habe bis jetzt nur die Funktion "TCPNameToIP" gefunden. Aber damit gehts nicht.

    Lieben Gruß, Anna

  • FileSelectFolder mit mehreren CLSIDs/ClassIDs

    • AnnaM
    • 30. Juni 2012 um 21:41

    hmm, das ist aber schade. Ich wollte das eigentlich so handhaben. Aber wie erstelle ich so eine GUI?
    Ich müsste ja alle seine Geräte auflisten und dann auch noch mit Unterordner und sowas alles. Oje ^^

  • FileSelectFolder mit mehreren CLSIDs/ClassIDs

    • AnnaM
    • 30. Juni 2012 um 13:38

    Hallo Zusammen,

    ich habe folgendes Problem.
    Ich möchte gerne ein FileSelectFolder machen, aber genau so, dass nur der Arbeitsplatz und dann noch die Netzwerkumgebung angezeigt wird.
    Es ist quasi eine Mischung aus folgendem Script:

    Local $ordner_auswahl = FileSelectFolder("Bitte wählen Sie den Ordner aus:", "::{20D04FE0-3AEA-1069-A2D8-08002B30309D}",1) --> Zeigt nur den Arbeitsplatz ohne Desktop, Papierkorb.. usw
    Local $ordner_auswahl = FileSelectFolder("Bitte wählen Sie den Ordner aus:","::{208D2C60-3AEA-1069-A2D7-08002B30309D}", 1) --> Zeigt nur die Netzwerkumgebung

    Gibt es denn eine Möglichkeit ein FileSelectFolder anzuzeigen, der den Arbeitsplatz und darunter die Netzwerkumgebung anzeigt? Kann man die CLSIDs mischen? Sowas wie "BitOr"?

    Danke im Voraus, die Anna :love:

  • Energiesparen verhindern

    • AnnaM
    • 26. Juni 2012 um 12:11

    Im Beitrag [ gelöst ] Standby verhindern? wird es erklärt.
    Er verhindert den Standby, aber setzt in nach dem Script nicht wieder auf den letzten Zustand.

    EDIT: OK, es war mein Fehler, es klappt nun. Sorry :S

  • Energiesparen verhindern

    • AnnaM
    • 26. Juni 2012 um 11:59

    :D Lustig, aber nicht das, was ich will *gg*
    Es muss ja auf anderen PCs auch gehen ^^
    Sprich, eine Abschaltung per Script und danach muss es wieder in den Ursprungszustand.

  • Energiesparen verhindern

    • AnnaM
    • 26. Juni 2012 um 11:36

    Hallo Zusammen,

    ich habe ein Problem beim Ausführen meines Tools. Das Tool an sich läuft super.
    Aber ich möchte jegliches Energiesparen verhindern.

    Z.B. geht der Rechner in den Standby-Modus, obwohl das Tool läuft.
    Das gilt es zu verhindern. Bildschirmschoner oder Bildschirm aus wäre nicht so schlimm.
    Hauptsache das Tool läuft weiter.

    Ist das realisierbar?

    Lieben Gruß, Anna :love:

  • Ordner abgleichen und kopieren

    • AnnaM
    • 26. Juni 2012 um 11:13

    Hallo Micha,

    ja, hat mir sehr geholfen. Danke

  • Ordner abgleichen und kopieren

    • AnnaM
    • 26. Juni 2012 um 00:30

    Hallo Zusammen,

    ich möchte gerne folgendes Problem lösen. Es sollen zwei Ordner synchronisiert werden.
    Das heißt, ich will einen Ordner in den anderen kopieren, aber nur mit den Dateien, die neuer sind.

    Bisher habe ich dieses mit dem Parameter D bei xcopy gemacht.

    [autoit]

    Run('XCOPY "'& $srcDir & '" "' & $destDir & '" /D /S /E /V /C /H /R /O /Y /F /G',@TempDir,@SW_HIDE )

    [/autoit]


    Alles kein Problem. Da ich auch einen Prozentbalken haben wollte, habe ich in einer Schleife - solange xcopy läuft -
    mit

    [autoit]

    $destSize = DirGetSize($destDir, 1)

    [/autoit]


    die bisherige Größe ausgegeben, umgerechnet und somit meinen Prozentbalken gefüllt und die bisher kopierte Dateigröße ausgegeben.

    Doch nun wird zur Dateisicherung ein NAS benutzt. Zwar ist dieses im Gigabyte-Netzwerk eingebunden, doch immer noch ziemlich träge.
    Auch wird ein Ordner mit mehreren 100GB übertragen (viele RAW-Dateien).

    Hier das bisherige Script, ausgearbeitet auch in diesem Forum:

    Spoiler anzeigen
    [autoit]


    Func CopyWithProgress($srcDir, $destDir) ;Original gigx und autoBert
    Local $tsBeginn = _NowCalc(), $tsDiff =-1, $tsRest ;eingefügt für Restdauer
    If StringRight($srcDir, 1) = "\" Then $srcDir = StringLeft($srcDir, StringLen($srcDir) - 1)
    If StringRight($destDir, 1) <> "\" Then $destDir = $destDir & "\"
    If Not FileExists($destDir) Then DirCreate($destDir)
    $srcSize = DirGetSize($srcDir, 1)
    $1_percent = $srcSize[0] / 100
    Run('XCOPY "'& $srcDir & '" "' & $destDir & '" /D /S /E /V /C /H /R /O /Y /F /G',@TempDir,@SW_HIDE )
    ProgressOn("Advanced status of file copying", "", "",10,10)
    Do
    if $tsDiff < 0 Then Sleep(5000)
    $destSize = DirGetSize($destDir, 1)
    $tsDiff = _DateDiff("s",$tsBeginn,_NowCalc())
    $tsRest = round($tsDiff / ($destSize[0] / $1_percent) * 100,0) - $tsDiff
    ConsoleWrite($tsDiff & " " & $1_percent & " " & $tsRest &@CRLF)
    ProgressSet(Round($destSize[0] / $1_percent, 2), Round($destSize[0] / (1024 * 1024), 2) & " MB of " & Round($srcSize[0] / (1024 * 1024), 2)& " MB copied" & @CRLF _
    & $destSize[1] & " of " & $srcSize[1] & " Files copied." & @CRLF _
    & $destSize[2] & " of " & $srcSize[2] & " Folders copied.", Round($destSize[0] / $1_percent, 2) & "% - Done! " & $tsRest & " sec. Rest")
    Sleep($tsDiff)
    Until $destSize[0] >= $srcSize[0]
    MsgBox(0,"Fertig in " & $tsDiff & " sec.",Round($destSize[0] / (1024 * 1024), 2) & " MB of " & Round($srcSize[0] / (1024 * 1024), 2)& " MB copied" & @CRLF _
    & $destSize[1] & " of " & $srcSize[1] & " Files copied." & @CRLF _
    & $destSize[2] & " of " & $srcSize[2] & " Folders copied." & @CRLF & Round($destSize[0] / $1_percent, 2) & "% - Done! ")
    ProgressOff()
    EndFunc

    [/autoit]

    Nun kann sich jeder denken, was passiert, wenn man einen solch großen Ordner ständig nach der Größe fragt und das noch über das Netzwerk.
    Da wird die Netzlast schnell zu groß und das Backup dauert ca 6h. Wenn ich es so per Hand verschiebe, ist es nach einer Stunde getan.

    Auch wäre es wünschenswert die gerade kopierte Datei anzuzeigen.
    Also meine neue GUI sollte ungefähr so aussehen:

    Spoiler anzeigen
    [autoit]


    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <ProgressConstants.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    $Form1 = GUICreate("Form1", 288, 156, 192, 124)
    $Group2 = GUICtrlCreateGroup("Fortschritt", 8, 8, 265, 129)
    $Label1 = GUICtrlCreateLabel("Aktuell:", 24, 40, 39, 17)
    $Progress1 = GUICtrlCreateProgress(72, 40, 190, 17)
    $Input1 = GUICtrlCreateInput("Input1", 72, 64, 193, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_READONLY))
    $Label3 = GUICtrlCreateLabel("Datei:", 24, 64, 32, 17)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Label2 = GUICtrlCreateLabel("Gesamt:", 24, 96, 43, 17)
    $Progress2 = GUICtrlCreateProgress(72, 96, 190, 17)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    EndSwitch
    WEnd

    [/autoit]


    Ich habe überlegt, mit FileCopy zu arbeiten, aber weiß nicht, wie ich mit den Änderungen einer Datei umgehen kann.
    Man könnte höchstens mit FileGetTime immer die Datei prüfen, die gerade dran kommt und beide Ordner mit einander vergleichen.

    Hat jemand zu später Stunde noch eine Idee, wie man hochperformant auf ein NAS Ordner abgleicht?
    Ich habe es schon sogar mit Robocopy versucht, doch auch hier ist es schwierig einen Kopierstatus hinzubekommen.

    Vielen Dank erst einmal für jede Hilfe.

    Lieben Gruß, Anna :love:

  • ControlClick

    • AnnaM
    • 4. April 2012 um 21:00

    Super klasse Tipp. Ich habs. :) Vielen Dank

  • ControlClick

    • AnnaM
    • 4. April 2012 um 20:15

    Ich glaube es hat sich soweit erledigt :) hihi.

    Der Pfeil, den ich anklicken wollte, öffnet so ein Untermenü und ich habe aus Spass mal das noch versteckte Steuerelement angegeben und mit ControlClick angesprochen obwohl es ja noch unsichtbar ist. Und siehe da, es klappt und kann angesprochen werden.

    Aber kann mir einer sagen, wie ich eine Combobox auswerte?

    Spoiler anzeigen

    >>>> Window <<<<
    Title: Drucken
    Class: #32770
    Position: 650, 188
    Size: 756, 693
    Style: 0x96CC0000
    ExStyle: 0x00000101
    Handle: 0x002B0808

    >>>> Control <<<<
    Class: ComboBox
    Instance: 2
    ClassnameNN: ComboBox2
    Name:
    Advanced (Class): [CLASS:ComboBox; INSTANCE:2]
    ID:
    Text:
    Position: 185, 222
    Size: 163, 24
    ControlClick Coords: 76, 11
    Style: 0x56000413
    ExStyle: 0x00000000
    Handle: 0x00210552

    Das ist die ComboBox. Und ich möchte da drinen einen ganz bestimmten Eintrag auswerten.

    Vielen Dank im Voraus schon einmal :)

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™