Ich kann diesen Fehler nicht reproduzieren. Also gehe ich mal von aus, dass er in deinem System liegt. Evtl. IE7 ? - Wäre 'ne mögliche Fehlerquelle, da geht ab und an was schief, aber ob das nun diese Fehler verursachen kann weiß ich nicht.
Beiträge von BugFix
-
-
Du hast doch schon das richtige Bsp. gefunden.
[autoit]
Dort ist es halt mit einer HTM-Datei erklärt, paß es auf TXT an und schon klappt es.
Nicht vergessen: Variable $Input muß vor der Verwendung deklariert werden.$filePath = "S:\VORLAGE.htm" ; ====> hier '*.TXT'
[/autoit]
_FileReadToArray($filePath, $Input)
For $i = 1 To $Input[0]
; $titel = _StringBetween($Input[$i], '<title>', '</title>') ====> brauchst du dann nicht
;If Not @error And $titel[0] <> '' Then
_GUICtrlComboAddString($Combo,$Input[$i]) ;$titel[0])
;EndIf
Next -
Die Suche ist dein Freund.
Wenn du dort 'outlook' eingibst, stößt du auch auf diesen Thread.
Dort ist erklärt, wie du auf Outlook zugreifen kannst (ohne Klicks zu simulieren).
Näheres zu den Methoden findest du unter Google mit 'Outlook Objektmodell'. -
- doch, genauso funzt das.
Hier der Beweis:
Spoiler anzeigen
[autoit]#include <GUIConstants.au3>
[/autoit] [autoit][/autoit] [autoit]Opt("GUIOnEventMode", 1)
[/autoit] [autoit][/autoit] [autoit]
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 542, 309, 193, 115)
GUISetOnEvent($GUI_EVENT_CLOSE, "Form1Close")
$Group1 = GUICtrlCreateGroup("Group1", 76, 48, 373, 193)
$Radio1 = GUICtrlCreateRadio("Radio1", 106, 78, 113, 17)
GUICtrlSetState(-1, $GUI_CHECKED)
$Radio2 = GUICtrlCreateRadio("Radio2", 106, 102, 113, 17)
$Radio3 = GUICtrlCreateRadio("Radio3", 106, 125, 113, 17)
$Radio4 = GUICtrlCreateRadio("Radio4", 106, 148, 113, 17)
$Radio5 = GUICtrlCreateRadio("Radio5", 106, 172, 113, 17)
$Radio6 = GUICtrlCreateRadio("Radio6", 106, 196, 113, 17)
$Input1 = GUICtrlCreateInput("", 279, 79, 121, 21)
$MyButton1 = GUICtrlCreateButton("MyButton1", 300, 180, 100, 30, $BS_FLAT)
GUICtrlSetOnEvent(-1, "MyButton1Click")
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###While 1
[/autoit] [autoit][/autoit] [autoit]
Sleep(100)
WEndFunc Form1Close()
[/autoit]
Exit
EndFunc
Func MyButton1Click()
For $i = $Radio1 To $Radio6
If GUICtrlRead($i) = $GUI_CHECKED Then
Switch $i
Case $Radio1
GUICtrlSetData($Input1, 'Radio1')
Case $Radio2
GUICtrlSetData($Input1, 'Radio2')
Case $Radio3
GUICtrlSetData($Input1, 'Radio3')
Case $Radio4
GUICtrlSetData($Input1, 'Radio4')
Case $Radio5
GUICtrlSetData($Input1, 'Radio5')
Case $Radio6
GUICtrlSetData($Input1, 'Radio6')
EndSwitch
ExitLoop
EndIf
Next
EndFunc -
Wenn möglich, den Silentparameter der Installprogramme nutzen.
Falls nicht vorhanden, schau dir mal "WinSetState()" an. -
[autoit]
; Group mit $radio1 bis $radio6
[/autoit]
For $i = $radio1 To $radio6
If GUICtrlRead($i) = $GUI_CHECKED Then
; Code zu diesem Radio
ExitLoop
EndIf
Next -
Schau mal in unsere Skripte. Netzwerksettings haben wir schon mehrfach gehabt.
-
Hi thunder-man,
das Problem hatte ich auch. Dir fehlt vermutlich noch ein PlugIn.
Du brauchst
- Sidekick
und
- CtagsSideKick ==> hier in den Opt. den Pfad zu deiner "ctags.exe" eintragenAnschließend in den Opt. zu SideKick - Parser: bei AutoIt ctags als Parser wählen.
Dann klappts auch mit dem Nachbarn.
-
Zitat
"Macros" zum Umschalten von Kommentaren sind schon "eingebaut":
Menü: Edit/Source/"Range Comment" und "Line Comment"
Damit läßt sich aber der Kommentar nur setzen - aber nicht zurückschalten.ZitatAutoComplete:
Ich wiederhol mich Augenzwinkern Im SideKick-Plugin "Code Complete Options" einstellen - fertig.
Nun wird alles vervollständigt was in der au3.xml steht
Eingestellt ist das - aber ohne Wirkung
Oder erwarte ich hier was falsches?
Ich meinte, dass schon ab Eingabe des ersten Buchstabens alle verfügbaren Befehle selektiert und angezeigt werden. -
Optisch schöner als eine GUI, die du nach eigenem Geschmack schön einrichten kannst?
Hmm... - nö.Was stört dich an der GUI-Lösung? $WS_POPUP - Style und schon sieht das gut aus.
-
Manchmal hilft [Blockierte Grafik: http://home.arcor.de/bugfix/google.gif]
guckst du -
Hi,
heute wurde tatsächlich mein Beitrag in der Regionalzeitung veröffentlicht.
Allerdings haben sie den letzten Satz rausgeschnitten. Naja, immerhin wurde es überhaupt gedruckt. -
Diese Teilbereiche nennt man Frames.
Schau dir mal die Funktionen _IEFrameGetCollection() und _IEFrameGetObjByName() an. -
Hi,
nix großes, aber vielleicht für irgendwen nützlich.Ermittlung des
Größten Gemeinsamen Teilers
oder des
Kleinsten Gemeinsamen Vielfachen
nach dem Euklidschen Algorithmus. (Die Variante mit Primfaktorzerlegung, mit der wir in der Schule gequält wurden, ist wirklich spürbar langsamer).Edit: kleine Erweiterung zur Rückgabe beider Werte
Spoiler anzeigen
[autoit]
[/autoit] [autoit][/autoit] [autoit]
MsgBox(0, 'ggT', _ggTkgV(256,12))
MsgBox(0, 'kgV', _ggTkgV(256,12,1))
MsgBox(0, 'ggT und kgV', _ggTkgV(256,12,2));===============================================================================
[/autoit]
;
; Function Name: _ggTkgV(Zahl1, Zahl2 [Rückgabetyp])
; Description:: ermittelt aus 2 natürlichen Zahlen den größten gemeinsamen Teiler
; und/oder das kleinste gemeinsame Vielfache
; Parameter(s): $a, $b natürliche Zahlen
; $Ret Rückgabe ggT = 0 (Standard); kgV = 1; beides = 2 (getrennt mit '|')
;
;===============================================================================
Func _ggTkgV($a, $b, $Ret=0)
Local $c, $f, $m = $a, $n = $b
$c = 1
While $c <> 0
$f = Int($a / $b)
$c = $a - $b * $f
If $c <> 0 Then
$a = $b
$b = $c
EndIf
WEnd
Switch $Ret
Case 0 ; ggT
Return $b
Case 1 ; kgV
Return $m * $n / $b
Case 2 ; String "ggT | kgV"
Return $b & '|' & $m * $n / $b
EndSwitch
EndFunc ;==>_ggTkgV -
Mal ein kleiner Testbericht nach all den Installationsarbeiten
Also ich habe jetzt mal ein größeres Programm codiert.
Momentan muß ich feststellen, dass sich unter jEdit (noch) nicht so schnell codieren läßt, wie unter SciTe.
Einige Features aus SciTe vermißt man erst, wenn sie fehlen. So z.B. die automatischen Befehlsvorschläge während der Eingabe, die User-Calltipps, Korrektur des geschriebenen Befehls bei Autovervollständigung (Groß-/Kleinschreibung). Aber gerade das sind Dinge, die enorm Zeit sparen.
Aber wenn ich sehe, in welch kurzer Zeit Stilgar jEdit AutoIt-fähig gestaltet hat, wird es nur eine Frage der Zeit sein, bis auch solche Features eingebunden sind.
Eines aber kann auch Stilgar nicht ändern - jEdit ist ein Speicherfresser. Bei meinem Notebook, dass sich seine mageren 256 MB noch mit der Grafik teilen muß, fällt das schon ins Gewicht.Aber der Gesamteindruck ist positiv. Ich werde auf jeden Fall weiter testen.
-
Zitat
Gibt´eigentlich die bei "SuperAbbrevs" auch die Möglichkeit wie bei "Abbrevs"
Text vorher - nachher anzugeben, damit der Cursor dorthin springt, wo ich will? (Nen Platzhalter, oder so)Hab ich bis jetzt nichts gefunden. Da müssen wir auf Antwort vom 'Meister' warten.
-
Hi,
ich habe mal aus SciTe die Abkürzungen in das Plugin "SuperAbbrevs" eingefügt.
Das beinhaltet alles aus der Datei "..Dokumente und Einstellungen\USER\abbrev.properties" ab Zeile 40 aber ohne Compilerdirektiven.
Zusätzlich beinhaltet es für "die Schleife in der Schleife" For-Schleifen mit der Zählervariable '$k'.Zitat
fork0=For $k = 0 To
fork0ub=For $k = 0 To UBound() -1
fork1=For $k = 1 To
fork1ub=For $k = 1 To UBound() -1
Wer also das Plugin "SuperAbbrevs" verwendet, braucht nur die angehängte Datei "AutoItScript" in den Pfad:
"..\Dokumente und Einstellungen\USER\.jedit\SuperAbbrevs\" kopieren. (Sofern diese Datei noch nicht existiert, sonst ?? )
Ich habe sie von "AutoItScript" zu "AutoItScript.txt" umbenannt wg. Upload. Also bitte zurückbenennen.Mit Kürzel+TAB wird dann z.B. aus "cmdlineselect" :
Spoiler anzeigen
[autoit]#region - CmdlineSelect
[/autoit]
If $CMDLINE[0] Then
For $i = 1 To $CMDLINE[0]
Select
Case $CMDLINE[$i] = '/?'
MsgBox(0x40000, @ScriptName & ' Help', _
'Switches are:' & @CRLF _
& @CRLF & '/extract' _
& @CRLF & @TAB & 'Extract files to current directory' _
& @CRLF & '/x' _
& @CRLF & @TAB & '' _
& @CRLF & '/x' _
& @CRLF & @TAB & '' _
& @CRLF & '/x' _
& @CRLF & @TAB & '' _
& @CRLF & '/x' _
& @CRLF & @TAB & '')
Exit
Case $CMDLINE[$i] = '/extract'
FileInstall('x', @ScriptDir & '\')
Exit
Case $CMDLINE[$i] = '/x'
Case $CMDLINE[$i] = '/x'
Case $CMDLINE[$i] = '/x'
Case $CMDLINE[$i] = '/x'
Case Else
MsgBox(0x40000, 'Incorrect switch used', _
'Command used:' & @CRLF & $CMDLINERAW & @CRLF & _
@CRLF & 'Use /? for the switches available.')
Exit
EndSelect
Next
EndIf
#endregion
Um eine Abkürzung zu bearbeiten, genau wie beim Erstellen:
- Abkürzung eingeben
- Shift+Tab
- Im Fenster den gewünschten Code eingeben
- Mit "Add mode-specific" abspeichernToll wäre natürlich noch, wenn wie bei SciTe, die erkannten Kürzel andersfarbig dargestellt werden während der Eingabe.
Mal sehen, vielleicht bekommen wir das ja noch hin.
Was mir auch noch gefallen würde, wär ein Makro zum switchen zwischen Kommentar/kein Kommentar (;~ ), wie bie SciTe mit Strg+Q bzw '-' vom Ziffernblock.
Ich hab mal in die Makros reingeschaut, programmtechnisch ist das auch nicht viel anders als AutoIt. Da ich aber von der Syntax keinen Schimmer habe, lasse ich mal die Finger von. -
Zitat
Oder muss ich dann umständlich eine MessageBox programmieren für ?
Also wenn du das Programmieren einer Mini-GUI mit einem Inputfeld, Label und Button als umständlich bezeichnest, bin ich gespannt was für dich eine einfache Programmierung ist.Soweit ich weiß, bekommt die Inputbox das Icon, das dem Programm zugeordnet ist. Wenn du also beim Kompilieren ein anderes Icon einbindest, wird dieses angezeigt. (hoffe, ich liege damit richtig)
-
Wenn man sich so den Code von erfahrenen Usern anschaut, erkennt man schon eine ähnliche Struktur. Das ergibt sich auch einfach aus dem Handling und häufig hat man auch Erfahrung in anderen Sprachen, die eine straffe Struktur erfordern.
Ob nun z.B. die Options vor oder nach den Includes kommen ist dabei sicher ziemlich belanglos.
Ich würde einen Strukturrahmen daher noch weiter fassen:
1. alle Festlegungen (das umfasst dann Includes, Opt., Deklarationen etc.)
2. Hauptprogramm
3. erforderliche FunktionenEs macht schon Sinn, den Variablennamen einen Verweis auf den Datentyp mitzugeben. I.A. praktiziere ich dies aber nur für Arrays. Bei den anderen Variablen bevorzuge ich einen markanten Namen, der mir Auskunft über den Einsatzzweck der Variablen gibt. Da läßt sich natürlich 'i', 's' ... mit einbringen.
Meine Programmieranfänge waren ja zu Zeiten von TP4 (TurboPascal). Hab ich heute noch, passt auf 2 Disketten.
Da mußte man alle Variablen explizit deklarieren. Das fand ich auch sehr hilfreich. Da gewöhnt man sich von Anfang an eine strukturierte Arbeitsweise an.
Diese Option läßt sich ja auch in AutoIt setzen [Opt("MustDeclareVars")]. Vielleicht als Tipp für Einsteiger. -
Zitat
Er möchte dann z.B. festlegen können, dass meinetwegen der Prozess "explorer.exe" maximal 60 MB des Arbeitsspeichers nutzen kann.
Ich frag mal andersrum: Welchen Sinn soll das Ganze haben?
Meines Wissens kannst du die Speicherverwaltung von Windows nicht aushebeln. Der einzige Weg einzugreifen, ist die Zuweisung von Prioritäten.
Aber Speicherverwaltung war schon immer (und wird wohl auch so bleiben) ein Problem, dass die Redmonder nicht vernünftig gestalten können.
Dass man Arbeitsspeicher tatsächlich effektiv nutzen kann, kann man super bei Linux-Distris sehen.