Fehler in der deutschen Hilfe bitte hier melden (Hilfedatei 3.3.14.5 2019.08.02)
-
Tweaky -
3. August 2019 um 10:48 -
Geschlossen
-
-
-
Hab in der deutschen Hilfe das doppelte Beispiel entfernt
-
Tweaky Danke!
-
Nice.
Nun aber ernsthaft.
"Das englische Beispiel ist ja echt mager". Das verstehe ich als Kritik und hätte daher gerne einen Verbesserungsvorschlag von Dir.
So wie Tweaky untermüdlich versucht die deutsche Hilfe zu verbessern, so ist das für die engl. ebenso möglich. Nur braucht es konstruktive Vorschläge!Du als Prof kennst ja das alte didaktische Prinzip: Fördern und fordern.
-
Zunächst ein Vorwort: Bisher habe ich den Eindruck gewonnen, dass wir / ich hier an der EN Hilfe wenig bis gar nichts ändern. Deshalb gehe ich normalerweise nicht mehr auf Fehler in der EN Hilfe ein.
Da du mich so nett bittest, folgt hier ein konstruktiver Vorschlag: In der EN Hilfe könnte man einfach das hervorragende Beispiel 2 der DE Hilfe aufnehmen.
Ansonsten wäre es für beide (DE u EN) hilfreich, deutlicher darauf einzugehen, dass es hier um eine besondere Handhabung als String geht. (Meine Erinnerung ist nicht mehr die beste, aber war in Visual Basic nicht eine Funktion "CallByName"?) Der Punkt ist, dass es für einen Anfänger hilfreich wäre, wenn das deutlicher herausgestellt würde. So wie im Beispiel 2 der DE Hilfe, die den Unterschied zeigt, zwischen einer Konsolenausgabe, bei der man einen String-Parameter direkt ausgibt, und einer, bei der man ihn per "Execute" ausgibt.
Variable = "@ScriptDir" (inklusive der Anführungszeichen!)
Direkte Ausgabe: Das Wort "@ScriptDir" (ohne Anführungszeichen!)
"Execute" Ausgabe: Der Pfad zum laufenden Script.
Hintergrund-Infos aus der Sicht eines Anfängers
Das Beispiel in der EN Hilfe zur Funktion Execute enthält gerade mal 2 Zeilen. Wie schon gesagt, ich bin zwar kein Anfänger, aber nach langjähriger Pause etwas eingerostet und sehe mich deshalb oft in der gleichen Situation wie ein Anfänger. Funktionen sind mir nicht mehr geläufig, die einfachsten Konstrukte muss ich mir neu aneigenen. Also!? ==> Klar, ich benutze die Hilfe oft, und noch wichtiger: Ich suche wirklich Hilfe in der Hilfe!
Oft habe ich den Eindruck, dass einige versierte AutoIt-ler diese Sichtweise verlernt haben, oder zumindest nicht benutzen. Wenn jemand in die Hilfe sieht, dem die betreffende Funktion mehr als vertraut ist, dann merkt er natürlich nicht, dass was fehlt, verwirrent ist, oder einfach mehr Erklärung benötigt, als jemand, der tatsächlich Hilfe braucht.
Das ist in der AutoIt-Hilfe hervorragend gelöst! Keine Frage. Es gibt viele Beispiele, die man per Mausklick sofort öffnen und ausführen kann. Wirklich eine gute Sache!Dennoch gibt es Stellen, wo man sich als Hilfesuchender ein wenig mehr wünscht.
So z. B. bei der Funktion "Execute": "Führt einen Ausdruck aus." ... hmm, ... was will mir das sagen?
- Der versierte Benutzer: "Na, ist doch klar, so und so und dies und das! Wo ist das Problem!?"
- Der hilfesuchende Benutzer: "Was meinen die mit 'Ausdruck'? Und wie wird der ausgeführt? Muss ich da die kleinen Tütchen mitnehmen und Häufchen wegmachen?"
Local $a = 1 Local $v = Execute("$a+1") ; $v is set to 2
Dieses Beispiel ist wenig hilfreich. Da habe ich mich als erstes gefragt, inwiefern sich das von einer einfachen Zuweisung unterscheidet.
Local $a = 1 Local $v = $a+1" ; $v is set to 2
Also wozu brauche ich dann die Funktion? Erst nach längerem Grübeln, genauerem Hinsehen ist mir die Sache mit dem String aufgefallen. Das Beispiel 2 der DE Hilfe hat meinen Verdacht bestätigt, und die Bezeichnung des Übergabe-Parameters ergab nun Sinn.
Das ist die Stelle, an der sich ein Anfänger deutlichere Infos wünscht!
-
Das Beispiel in der EN Hilfe zur Funktion Execute enthält gerade mal 2 Zeilen.
Das zweite deutsche Beispiel hat aber, nach Abzug der Kommentare und des Funktionsaufrufes sogar nur eine Zeile
"Was meinen die mit 'Ausdruck'? Und wie wird der ausgeführt? Muss ich da die kleinen Tütchen mitnehmen und Häufchen wegmachen?"
Vom Benutzer einer Programmiersprache darf man aber schon erwarten, dass er die Grundzüge von Programmiersprachen beherrscht, oder?
Von der Bedienungsanleitung meines Autos erwarte ich ja auch nicht, dass der Begriff "Motor" erläutert wird. Wir sollten also zumindest von Grundkenntnissen ausgehen.
Nichtsdestotrotzdem würde ich es aber als sinnvoll erachten, wenn wir auch die engl. Hilfe / die engl. Beispiele anpassen, wenn dort nachgewiesenermaßen Käse drinsteht.
Siehe auch: _ArrayMaxIndex
-
Diesmal nur winzige Buchstabendreher im Text des Beispiels.
Funktion IsObj
Local $oShell = ObjCreate("shell.application")If IsObj($oShell) Then
=> MsgBox($MB_SYSTEMMODAL, "", "Die Varaible ist ein Objekt.")
Else
=> MsgBox($MB_SYSTEMMODAL, "", "Die Varaible ist kein Objekt.")
EndIf
Gruß,
Bernd.
-
behoben
-
Hallo,
hier wieder ein Fehler.
Funktion: " _Timer_SetTimer()"
In den Bemerkungen steht:
- $hWnd - Ein Handle zu dem Fesnter welches mit dem Timer verbunden ist.
- $iTime - Die Anzahl von Millisekunden die vergangen sind seit das Sysmte gestartet wurden.
Da war wohl einer etwas zu schnell beim schreiben
MfG:BigRox
-
erledigt
-
Funktion OnAutoItExitRegister
Registriert eine Funktion, wenn AutoIt verlassen wird.
Funktion OnAutoItExitUnRegister
Deregistriert eine Funktion, wenn AutoIt beendet wird.
Irreführende Beschreibung. Vorschläge:
Funktion OnAutoItExitRegister
Registriert eine Funktion, die aufgerufen werden soll, wenn AutoIt verlassen wird.
Funktion OnAutoItExitUnRegister
Deregistriert eine Funktion, die aufgerufen würde, wenn AutoIt beendet wird.
-
behoben
-
Wow, mutch irreführend:
Funktion _GUICtrlRichEdit_Create
Parameter
$hWnd Handle zum Hauptfenster Handle to parent or owner window Habe mich gerade damit beschäftigt, wie man ein Child- in ein Parent-Control einfügt. Da hat mich die DE Beschreibung ganz schön an der Nase rumgeführt.
Mein Vorschlag ist einfach die englische Beschreibung zu übersetzen:
$hWnd Handle zum Eltern- oder Besitzerfenster Gruß,
Bernd.
Und hier mal ein weiteres Danke für deine großartige Arbeit.
-
NB: Da zeigt sich mal wieder das allgemeine Problem bei Übersetzungen von IT-Themen ins Deutsche. Wo es keine (sinnvollen) deutschen Begriffe gibt, bleiben die engl. stehen und verwirren weiterhin die des Englischen nicht-mächtigen Benutzer. Online Übersetzungshilfen helfen da leider auch nicht weiter. "Handle" (wie in obigem Beispiel) führt bei LEO zu 252 Vorschlägen.
Irgendwie unbefriedigend, da hilft wohl nur der Erwerb des engl. IT-Chinesisch </rant> -
Ich als "Englisch-Tiefbegabter" danke dir!
Edit: Typo
-
behoben
-
-
Funktion _GUICtrlEdit_GetSel
Im DE Beispiel:
Func Example()
Local $hStatusBar, $idEdit, $hGui
Local $sWow64 = ""
If @AutoItX64 Then $sWow64 = "\Wow6432Node"
Local $sFile = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE" & $sWow64 & "\AutoIt v3\AutoIt", "InstallDir") & "\include\changelog.txt"
Die changelog.txt gibt es (bei mir) nicht, scheinbar sollte da "_ReadMe_.txt" hin, so wie im EN Beispiel.
Bernd.
Tweaky: Diesmal ein Danke im Voraus, dann wird der Thread nicht so aufgebläht.
-
Funktion FileRead
AutoIt; Öffnet die Datei zum schreiben und speichert das Handle in einer Variable. Local $hFileOpen = FileOpen($sFilePath, $FO_READ) If $hFileOpen = -1 Then MsgBox($MB_SYSTEMMODAL, "", "Es ist während dem lesen der Datei ein Fehler aufgetreten.") Return False EndIf
; Öffnet die Datei zum
schreibenLesen und speichert das Handle in einer Variable. <== ($FO_READ)
MsgBox($MB_SYSTEMMODAL, "", "Es ist während dem lesen der Datei ein Fehler aufgetreten.")groß schreiben ==> "... während dem Lesen ..."
Bernd.
-