na und ausserdem... ne verknüpfung kann man ma eben schnell umgehn...
wenn autoit den prozess überwacht ist das schon schwieriger ![]()
Beiträge von FireFlyer
-
-
oO... ich hoffe hier is niemand von SAP... aber ihr wisst ja was es heisst

-
ctec
ich dachte da eher an rechnungen mit winkel sin cos usw
Du musst ja berechnen in welchem winkel der strahl wohin geht wenn er von punkt 1 losgeht (immer auf punkt 2, MAUSposition) und wie er auf punkt 3 spigel/wand auftrifft etc ;)... naja macht man vllt auch schon früher... keine ahnung mehr... nachm abi hat man ehh alles vergessen
-
ja funkey hat doch schon die richtige funktion geliefert:
[autoit]
[/autoit]
if StringInStr($deinstring, ".") Then
$split = StringSplit($deinstring, ".")
Else
MsgBox(0, "Not found", "Kein . im String "&$deinstring&" gefunden!")
EndIf -
ok wie lange programmierst du schon mit autoit? bzw. überhaupt?
Die idee ansich find ich nicht schlecht, wurde zwar schon ein paarmal umgesetzt aber trotzdem. Ein Spiel ist nunmal somit das aufwendigste was man sich überhaupt vorstellen kann. Aber meiner Meinung nach brauchst du dazu:
1. Kentnisse GUI/bzw. überhaupt allg. Autoit (fortgeschritten)
2. Kentnisse GDI+
3. Mathematik 10. Klasse
-
scheisse... sry ich hab mich total verlesen^^ ich hab da irgendwie gelesen wie er ne datei ins autoIT anstatt autoRUN verzeichnis reinbekommt -.-... ohh sorry
-
zum formatieren nimm cmd, kann man ja mit autoit perfekt machen
damit du rausbekommst wo der user autoit installiert hat musst du in die registry gehn HKEY_LOCAL_MACHINE\SOFTWARE\Autoit???... da steht dann bestimmt der pfad

-
noee net mit mausklick das geht viel schöner

wenn du IE nutzen willst _IECreate
mit FF evt. FF.au3 (UDF)Wenn du immer den standardbrowser benutzen willst:
[autoit]ShellExecute("www.google.de")
[/autoit]Wenn du ohne UDF auskommen willst entweder selbst die Objekte erstellen und per Methoden navigieren (nicht für Anfänger
Wenn deine GUI lädt kannst du doch z.b. einfach sowas machen: INI BSP:
Spoiler anzeigen
[1]
google=http://www.google.de
autoit=http://www.autoit.de
[2]
GMX=http://www.gmx.de
... und so weiterUnd dann erstellst du deine GUI "dynamisch" nach der Ini Datei:
Spoiler anzeigen
[autoit]$gui = GUICreate("TEST", 100, 100)
[/autoit] [autoit][/autoit] [autoit]
$ini = IniReadSection(@ScriptDir&"\deineini.ini", @wday)
$left = 10
For $i = 1 To Ubound($ini)-1
$top = ;höhe mit der schleife bestimmen, einfach ausprobieren
$button[$i] = GuiCtrlCreateButton($ini[$i][0], $left, $top)
NextWhile 1
[/autoit]
$msg = GUIGetMsg()
For $i = 1 To Ubound($button)-1
If $msg = $button[$i] Then
$read = GUICtrlRead($button[$i])
$ini2 = IniRead(@ScriptDir&"\deineini.ini", @wday, $read, "nothing")
if $ini2 <> "nothing" Then ShellExecute($ini2)
Next
If $msg = $GUI_EVENT_CLOSE Then Exit
WEnd -
naja du willst eine dynamische gui soweit habe ich das verstanden, jedoch woher nimmst du die links etc? aus einer ini oder wie?
-
naja wird die nicht in der chronik gespeichert? Diese wird doch bestimmt in einer Datei abgelegt,
also bei mozilla firefox 3 ist es places.sqlite unter anwendungsdaten/mozilla/firefox/profiles/profilname/places.sqliteAufbau der DB checken auslesen, sollte kein Problem sein denk ich

Beim IE ist es so:
C:\Dokumente und Einstellungen\USERNAME\Lokale Einstellungen\Verlauf
Was das für komische dateien sind (& ob es überhaupt welche sind weiss ich net) -
nein ich sag ja da fehlt die datei aber er hat das alles aus dieser udf genommen:
Spoiler anzeigen
[autoit]#include <array.au3>
[/autoit] [autoit][/autoit] [autoit]Global $file = "C:\Downloads\Musik\Chris De Burg - Lady in Red.mp3"
[/autoit] [autoit][/autoit] [autoit]_DLLstartup()
[/autoit] [autoit][/autoit] [autoit]
Global $re = _getID3Tag($file)
If @error Then MsgBox(0, 'Error', 'Error - no array returned', 5)
_ArrayDisplay($re)
_setID3Tag($file, 'TrackPosition', 100)
If @error Then MsgBox(0, 'Error', 'Error - setID3Tag', 5)
_setID3Tag($file, 'TitleAlbum', 'Mega')
If @error Then MsgBox(0, 'Error', 'Error - setID3Tag', 5)
$re = _getID3Tag($file)
If @error Then MsgBox(0, 'Error', 'Error - no array returned', 5)
_ArrayDisplay($re)
_DLLshutdown();===================================================================================================
[/autoit] [autoit][/autoit] [autoit]============
[/autoit] [autoit][/autoit] [autoit]
; 'TitleAlbum', 'Movie', 'Title', 'CopyrightYear', 'CopyrightHolder', 'Comments', 'Label', 'BeatsPerMinute',
; 'LeadArtist', 'PartOfSet', 'TrackPosition', 'Year', 'Genre', 'FileId', 'ISRC'
;================================================================================================================
[/autoit] [autoit][/autoit] [autoit]
Func _setID3Tag($h_file, $detail, $value)
Local $oId3 = ObjCreate("CDDBControl.CddbID3Tag")
If Not IsObj($oId3) Then
SetError(1)
Return 0
EndIf
; False means open for read-write
$oId3.LoadFromFile ($h_file, False)Switch $detail
[/autoit] [autoit][/autoit] [autoit]
Case 'TitleAlbum'
$oId3.Album = $value
Case 'LeadArtist'
$oId3.LeadArtist = $value
Case 'Title'
$oId3.Title = $value
Case 'TrackPosition'
$oId3.TrackPosition = $value
Case 'Year'
$oId3.Year = $value
Case 'Genre'
$oId3.Genre = $value
Case 'Comments'
$oId3.Comments = $value
Case 'Label'
$oId3.Label = $value
Case 'FileID'
$oId3.FileId = $value
Case 'IRSC'
$oId3.ISRC = $value
Case 'CopyrightHolder'
$oId3.CopyrightHolder = $value
Case 'CopyrightYear'
$oId3.CopyrightYear = $value
Case 'PartOfSet'
$oId3.PartOfSet = $value
Case 'Movie'
$oId3.Movie = $value
Case 'BeatsPerMinute'
$oId3.BeatsPerMinute = $value
Case Else
SetError(2)
Return 0
EndSwitch
$oId3.SaveToFile ($h_file)
Return 1
EndFunc ;==>_setID3TagFunc _getID3Tag($h_file)
[/autoit] [autoit][/autoit] [autoit]
Local $oId3 = ObjCreate("CDDBControl.CddbID3Tag")
If Not IsObj($oId3) Then
SetError(1)
Return 0
EndIf
$oId3.LoadFromFile ($h_file, False)
Local $idTag_A[15][2]
$idTag_A[0][0] = 'Title'
$idTag_A[0][1] = $oId3.Title
$idTag_A[1][0] = 'LeadArtist'
$idTag_A[1][1] = $oId3.LeadArtist
$idTag_A[2][0] = 'Album'
$idTag_A[2][1] = $oId3.Album
$idTag_A[3][0] = 'TrackPosition'
$idTag_A[3][1] = $oId3.TrackPosition
$idTag_A[4][0] = 'Year'
$idTag_A[4][1] = $oId3.Year
$idTag_A[5][0] = 'Genre'
$idTag_A[5][1] = $oId3.Genre
$idTag_A[6][0] = 'Comments'
$idTag_A[6][1] = $oId3.Comments
$idTag_A[7][0] = 'Label'
$idTag_A[7][1] = $oId3.Label
$idTag_A[8][0] = 'FileId'
$idTag_A[8][1] = $oId3.FileId
$idTag_A[9][0] = 'ISRC'
$idTag_A[9][1] = $oId3.ISRC
$idTag_A[10][0] = 'CopyrightHolder'
$idTag_A[10][1] = $oId3.CopyrightHolder
$idTag_A[11][0] = 'CopyrightYear'
$idTag_A[11][1] = $oId3.CopyrightYear
$idTag_A[12][0] = 'PartOfSet'
$idTag_A[12][1] = $oId3.PartOfSet
$idTag_A[13][0] = 'Movie'
$idTag_A[13][1] = $oId3.Movie
$idTag_A[14][0] = 'BeatsPerMinute'
$idTag_A[14][1] = $oId3.BeatsPerMinute
Return $idTag_A
EndFunc ;==>_getID3TagFunc _DLLstartup($DLLpath = '')
[/autoit] [autoit][/autoit] [autoit]
If $DLLpath = Default Or $DLLpath = '' Then $DLLpath = @ScriptDir & '\cddbcontrol.dll'
RunWait('regsvr32 /s ' & '"' & $DLLpath & '"')
EndFunc ;==>_DLLstartupFunc _DLLshutdown($DLLpath = '')
[/autoit]
If $DLLpath = Default Or $DLLpath = '' Then $DLLpath = @ScriptDir & '\cddbcontrol.dll'
RunWait('regsvr32 /u /s ' & '"' & $DLLpath & '"')
EndFunc ;==>_DLLshutdownIch dachte eig. da liegt nur en pfad oder sowas... weil z.b. der windoof media player legt immer ein extra jpg an mit albumcovers... wiso schreibt er es nicht in den tag???
-
[autoit]
Local $id3 = ObjCreate("CDDBControl.CddbID3Tag")
[/autoit]
MsgBox(0, "", $id3.AlbumCover)geht das?^^... sry ich kanns net testen...
Oder kann man nicht irgendwie rausfinden welche ohhman ich weiss nichmal wie das heisst (Methode????) -.- halt die .irendwasWas es davon alles gibt?
-
Wie steht das denn da drin??? Direkt das bild oder nur ein Pfad oder was genau?
-
Evtl mit PixelSearch arbeiten
teste an mehreren Punkten ob sich die Farbe geändert hat... in wie weit dies dynamisch bei WOW funktioniert kann ich aber leider nich sagen -
ok ich weiss jetzt nicht wie kompliziert deine abfrage der laufwerke und drucker ist aber wenn sie nur kurz dauert, würde ich eine funktion schreiben die die laufwerke und drucker als array ausgiebt meinetwegen
[autoit]
$array[$anzahl][0] = Laufwerk
$array[$anzahl][1] = Drucker
usw.
Dann kannst du gleich, wenn du die GUI erstellst die größe mit angeben
also z.b. so:
[/autoit]
$array = deinefunktion()
$faktor = 7
$anzahl = Ubound($array)-1
if ($anzahl * $faktor) > 500 Then
$guihoehe = $anzahl * $faktor
Else
$guihoehe = 500
EndIf
GUICreate(..., $hoehe,...) -
Wenn du 7Zip installiert hast, steht alles weitere über cmdline parameter in der beiliegenden Hilfe
Diese ist versändlich geschrieben und man kann damit wunderbar arbeiten, und ja man kann auch selbstextrahierende Archive machen die du wiederrum per cmdline parameter steuern kannst.Dieses Prinzip benutze ich für meine größeren Projekte damit ich nich so viele Files includen muss

Die Kommandozeile ansteuern????
Naja du meinst vermutlich das hier:
[autoit]Run("C:\Programme\7zip\7gz.exe -a -x9 -p C:\test\test.7z")
[/autoit]Ich weiss jetzt nicht mehr ob die Parameter stimmen, ist ausm kopf raus aber wie gesagt in der Hilfe steht alles

-
Mit _FileListToArray kannst du alle UnterOrdner aus einem Ordner ermitteln, Dann musst du mit schleifen arbeiten.
Wir hatten hier schonmal eine große Diskussion da es mit Arrays relativ lange dauert da diese ständig redimensioniert werden es gab ein paar sehr gute vorschläge im Script bereich mit objekten etc. am besten dort einfach mal nachschauen, ansonsten kannst du ja deinen code verwenden
Grml Oscar war wieder schneller^^... warst es nicht sogar du der diese UDF geschrieben hatte?
-
also ich würde das genau so versuchen wie du geschrieben hast, Bild in GUI laden, und mit pxl search das bild absuchen... wie effizient diese methode ist weiss ich nicht aber farbabweichung hat die Funktion doch... wenn ich mich recht erinnere shade variation

und dann meine idee wäre: (langsam wegen arrayredim)
Spoiler anzeigen
[autoit]Dim $found[1][2]
[/autoit]
$raster = 5
$farbe =
For $i = 0 To $hoehe Step $raster
For $x = 0 To $breite Step $raster
$pxl = PixelSearch($i, $x, $i+$raster, $i+$raster, $farbe)
If Not @error Then
Redim $found[Ubound($found)+1][2]
$found[$i][0] = $pxl[0]
$found[$i][1] = $pxl[1]
EndIf
Next
NextUi ich hoffe das gfeht so einigermaßen war jetzt völlig ausm kopf raus gecoded, und dazu noch ohne es testen zu können

-
... ich kapier dein(e) problem(e) überhaupt nicht erstens ist @year keine variable sondern ein makro das das aktuelle jahr (systemzeit) ausgibt... dazu brauchst du keine ini

zu 2.
Dazu fällt mir nichts ein wie man den aktuellen funktionsnamen auslesen könnte, den musst du halt so reinschreiben... sollte ja nicht das problem sein da funktionsnamen nicht dynamisch sein können -
ach quatsch... autoit kann das? so wie man das vom guten alten unix kennt? ../ bzw. ..\ für übergeordnetes verzeichnis?
schon wieder was gelernt
