ich wünsch auch alles Gute!
Beiträge von Skerg
-
-
Diese meldung kommt wenn man auf einen nicht definierten Array index zugreifen will z.B.
[autoit]Local $aBeispiel[2][2]
[/autoit]
$aBeispiel[1][1] = "kein Error"
$aBeispiel[1][2] = "Error"; kann nicht ausgeführt werden fehlermeldungdas es jedoch nur bei ausführung unter anderen nutzern zu dem fehler kommt kann eigentlich nur daran liegen das du etwas mit dem array machst was nutzerabhängig ist aber ohne Script oder/und einer genauen erklärung was das Script macht kann man da nicht viel sagen...
-
ich kenne es nur mit nem schnapsglas im energy Hier und da ist die mische 2/6 also knapp 33,33.. hatte jetzt nur aus dem kopf auf 40 geschätzt
-
Du musst den wert auch schon zurück geben
[autoit]
[/autoit]
Func _ImageGUI_GetWidth($GUIImage)
_GDIPlus_Startup()
Local $BigImage = _GDIPlus_ImageLoadFromFile($GUIImage)
Local $iW = _GDIPlus_ImageGetWidth($BigImage)
_GDIPlus_Shutdown()
Return $iW ; <---Sonst kommt kein wert von der Func zurück
EndFuncsonst ist es immer standard 0
-
Momentan Trinke ich recht gerne "Flying Hirsch(40% Jägermeister / 60% RedBull)" oder auch mal Vodka-O (Meist 50/50) joa sonst bin ich eigentlich keiner der viele Mischgetränke Trinkt
-
Also ich kenne nur ne proxy-serversoftware für linux keine ahnung ob es die auch für Windows gibt nennt sich Squid.
Kann ja sein das das dir weiterhilftEdit: Hab mal geschaut gibt offenbar eine Windows portierung was die aber taugt weiß ich nicht
-
kleiner tipp noch ich würde dir auch empfehlen dir anzugewöhnen möglicht den Absoluten Pfad zu nehmen autoit hat um diesen Pfad Variabel zu machen wunderbaren Macros
[autoit]@ScriptDir
[/autoit]
@DesktopDir
;... etc
;so das aus
;$Main = "wald.jpeg"
$Main = @ScriptDir & "\wald.jpeg"
;Wirdleider ist es auch schon spät und ich muss pennen
kann dir also erst morgen weiterhelfen... möglicherweise auch erst abends hab an der arbeit kein autoit / scite
hoffe das sich noch jemand bereit erklärt dir zu helfen.und nicht vergessen gib alle infos über dein scriptproblem raus nur so ist eine einfache hilfe möglich.
-
Was für die Fehlersuche wahnsinnig hilfreich ist und immer! vorhanden sein sollte ist der code der ausgeführt wird... nützt nix wenn man hier ne UDF postet und sagt mein prog. geht net ohne zu zeigen was man damit überhaupt macht... und im normal fall wirft Scite immer etwas aus wenn was schief geht.
was mir anfangs geholfen hat war ein einfaches ConsoleWrite() einzubauen das mir die werte meiner Variablen ausgibt, damit kann man auch schon einiges finden.
besser noch ist @error nach JEDER! Aktion die schief gehen kann zu überprüfen.
-
Du könntest die Mausposition in der Gui abfragen und bei linker maustaste ein verschieben befehl senden
Spoiler anzeigen
[autoit]; Original code - martin
[/autoit]
#include <GuiconstantsEx.au3>
#include <WindowsConstants.au3>
#include <SendMessage.au3>
Global Const $SC_DRAGMOVE = 0xF012
HotKeySet("{ESC}", "On_Exit")
$hGUI = GUICreate("X", 100, 100, -1, -1, $WS_POPUP)
GUISetBkColor(0x00FF00, $hGUI)
$hButton = GUICtrlCreateButton("Test", 10, 35, 80, 30)
GUISetState()
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_PRIMARYDOWN
_SendMessage($hGUI, $WM_SYSCOMMAND, $SC_DRAGMOVE, 0)
Case $hButton
On_Button()
EndSwitch
WEnd
Func On_Button()
MsgBox(0, "Hi", "Button Pressed")
EndFunc ;==>On_Button
Func On_Exit()
Exit
EndFunc ;==>On_ExitBesipiel von: http://www.autoitscript.com/wiki/Moving_an…zing_PopUp_GUIs
Für die Coordinaten innerhalb des fensters kannst du
[autoit]#include <WinAPI.au3>
[/autoit]
_WinAPI_GetMousePos(True , $hWnd);$hWnd = dein Fenster Handelverwenden und einen mausklick kannst du auch alternativ mit
[autoit]#include <Misc.au3>
[/autoit]
if _IsPressed("01") Then
erfassen -
Bin mir nicht sicher ob ich dich richtig verstanden habe, aber ich glaube du soltest dich mal in GDI+ einlesen in der hilfe gibt es viele beispiele für automatische Screenshots von Fenstern oder Bildschirmregionen.
-
So obwohl ich jetzt schon einige Tage hier im Forum herumgeistere wollte ich mich mal vorstellen.
Mein Name ist Sebastian und ich komme aus Hessen, von Beruf bin ich gelernter Chemielaborant und bin eher durch zufall auf AutoIt gestoßen.
Es begab sich also zu zeiten meiner Ausbildung. Da ich sehr schlampig meine Ausbildungsnachweise geführt habe und ich in 3Tagen knappe 1 1/2 Jahre nachtragen musst (glücklicherweise als Dokument File nicht Handschriftlich) da viel mir ein Programm zu automatisierung von diversen aufgaben ein.
Ja es war AutoIt mit dem ich zuvor durch einen Cousin in kontakt kam.
Ich nutze bis dahin nur eine kleine File die ich von besagtem Cousin erhalten hatte, ein kleines tool mit dem ich schnell Servercommands eintippen konnte um mir die Tipparbeit beim Moderieren eines dedicated Server zu erleichtern.
Ich schrieb die eingaben in der File um und merkte bei der suche durch die Hilfe das dieses Programm zum automatisieren noch viel viel mehr kann ^^.So hatte ich ein neues Hobby und glücklicherweise auch meine Ausbildungsnachweise Fristgerecht (gut das ich häufige sich wiederholende tätigkeiten hatte^^)
Zu meinen weiteren Hobbys zählt auch die Elektrotechnik mit der ich quasi aufgewachsen bin (mein Vater ist Elektriker und hat immer alles mögliche selbst gebastelt)
zu meinen letzten größeren Projekten zählt der umbau einer N64 zur Mobilen spielekonsole (auch wenn ich kläglich am gehäuse gescheitert bin).Hier im Forum schaue ich jetzt schon einige Jahre rein und wurde immer wieder überrascht das ich zu fast allen meinen fragen eine Antwort gefunden habe.
Mittlerweile bin ich nach eigener einschätzung kein "VollNoob" mehr in AutoIt und wollte gerne hier im Forum etwas von meinem angeeigneten Wissen an Wissbegierige vermitteln.
Mein derzeit laufendes AutoIt Projekt ist eine 2D RPG Engine die ich selbstverständlich auch hier Posten werde wenn sie fertig ist. Des weiteren plane ich auch eine art Editor zu erstellen mit dem jeder der möche leicht ein eigenes RPG / AktionRPG erstellen kann.
Skerg

-
Das einzige was mir dazu einfallen würde währe das unrühmliche
[autoit]
[/autoit]
Execute()jedoch würde ein potentieller Angreifer auch ganz leicht herausfinden wie er den zusatz Code bekommt wenn er die haupt File decompieled hat.
wenn du dementsprechenden Schutz suchst kann man leider mit purem Autoit nicht viel machen, ich hab zwar im englischen Forum etwas von ner Script verschlüsselungs UDF gelesen nur ausprobiert habe ich sie jedoch nicht und Execute würde dann auch nicht mehr funktionieren. -
Werd mal in die Source schauen, wer weiß möglicherweise bringt das den durchbruch wenn nicht hab ich mir schon was überlegt um via pfad temporär zu entzippen jedoch weiß ich nicht ob das so klappt wie ich mir das erhoffe^^
-
wenn es nur das richtige durchnummerieren ist
Achtung! bin grade an nem Rechner ohne AutoIt und kann den code nicht testen

Spoiler anzeigen
[autoit]
[/autoit] [autoit][/autoit] [autoit]
Local $startPath = 'C:\Test\'
Local $ZielPfad = 'C:\Test\Kopien\' ; Backslash mit verwenden!
Local $ext = 'txt'Local $artxtFiles = _GetFilesFolder_Rekursiv($startPath, $ext, 0)
[/autoit] [autoit][/autoit] [autoit]
Local $j = 1, $k = 0, $l = 0For $i = 1 To $artxtFiles[0]
[/autoit]
Local $tmp = StringSplit($artxtFiles[$i], '\')
if isArray($tmp) Then $tmp = $tmp[$tmp[0]]
FileCopy($artxtFiles[$i], $ZielPfad & $l & $k & $j & "_" & $tmp & $ext)
If @error Then
MsgBox(262160, "ACHTUNG", "Die Datei" & @CRLF & $artxtFiles[$i] & @CRLF & _
"konnte nicht verschoben werden, da eine Zieldatei mit dem Namen" & @CRLF & _
$ZielPfad & StringRight($nul & $i, $len) & '.jpg' & @CRLF & "bereits existiert!")
Else
$j += 1
if $j > 9 Then
$j = 0
$k += 1
Endif
if $k > 9 Then
$k = 0
$l += 1
Endif
Endif
Nextist jetzt zwar sehr unelegant aber ich hoffe das war das problem was du meintest
-
Kennt jemand zufällig diese Funktion aus der Irrlicht UDF und kann mir sagen ob es so etwas auch als einzelne UDF gibt? Google wollte mir darauf nicht antworten

zu der Function: Die Function bindet eine zip File so ein das sie vom skript wie ein ordner gelesen werden kann.
Zitat
Auszug aus dem UDF Header:
; Name...........: _IrrAddZipFile
; Description ...: Adds a zip archive to the filing system allowing to load files out of the zip file.Wenn es so etwas nicht einzeln gibt, kennt jemand die art und weise wie das funktioniert um es nachzubauen?
Wenn es nicht zu kompliziert ist ^^. Ansonsten müsste ich die gesammte Irrlicht engine für nur eine funktion mit einbauen
-
Einen Zeilenumbruch machst du mit
[autoit]
[/autoit]
InputBox("Eingabe", "Bitte den State of Decay Pfad eingeben." & @CRLF & "z.B.: C:\StateOfDecay\ ", "") -
Mein ansatz währe mit ObjCreate()
Achtung! Code ist nicht getestet habe hier zur zeit keinen zugriff auf AutoIt und kann den code daher nicht testen
Spoiler anzeigen
[autoit]
[/autoit]
Local $sFilePath = "Path\to\Your\File.doc" ;Hier den Pfad deiner .doc Angeben
Local $sSavePath = "Path\for\your\New\File.pdf" ;Hier den Zielpfad deiner PDF angeben
Local $oWord = ObjCreate("Word.Application") ;Hier wird das MSWord Object erstellen
if IsObj($oWord) Then ;überprüfe ob das object wirklich erstellt wurde
if FileExists($sFilePath) Then ;überprüfe ob die .doc file existier
$oWord.Documents.Open($sFilePath) ;öffne die .doc File
if StringLower(StringTrimLeft($sSavePath, StringLen($sSavePath) - StringLen(".pdf"))) <> ".pdf" Then
$sSavePath &= ".pdf" ;wenn die .pdf endung vergessen wurde wird sie hier hinzugefügt
Endif
$oWord.ActiveDocument.SaveAs($sSavePath) ;Speichere die PDF
Else
MsgBox("","Error","File does not exist")
Exit
Endif
Else
MsgBox("","Error","Failed to create Object")
Exit
Endif
If FileExists($sSavePath) Then
MsgBox("","Success","File " & $sSavePath & " Creating successful")
Else
MsgBox("","Error", "Failed to create " & $sSavePath)
Endif
$oWord.Quit
$oWord = ""
Exit
Bin mir leider auch nicht sicher ob Word es dann auch als .pdf speichert gehe aber mal davon aus. -
Sieht gut aus, wenn ich heute abend daheim bin werde ich es mal testen. Möglicherweise kann ich sogar für eins meiner scripte zur arbeitszeiterfassung was abkupfern

-
ich würde ohne dein system jetzt zu kennen noch empfelen auch @IPAddress2, @IPAddress3, @IPAddress4
[autoit]
in die überprüfung mit einzubeziehen,
[/autoit]
If _Search_LIKE(@IPAddress1, "172.25.10.%" ) _
Or _Search_LIKE(@IPAddress2, "172.25.10.%" ) _
Or _Search_LIKE(@IPAddress3, "172.25.10.%" ) _
Or _Search_LIKE(@IPAddress4, "172.25.10.%" ) Then
; Dein Code Hier
Else
; Dein Code Hier
Endifnur ein tipp wie ich es machen würde
wie gesagt kenne ja die hintergründe nicht -
Guten Abend liebes AutoIt Forum,
nach ewigem Lurken im Forum habe ich mich nun doch dazu entschlossen mir einen Account zu erstellen
und hier ist auch schon meine erste Frage:Ist es möglich .png und .jpg Bilder als OpenGl Texturen zu nutzen indem man die Binary in der .au3 (oder einer art Container) Liegen hat
ohne das man das Bild erst auf die Festplatte schreiben muss?
Ich verwende diese UDF: ogl4au3 2.0 Alpha - Zweite große OpenGL UDF mit vielen BeispielenMein Versuch soweit (Relevanter Teil):
Spoiler anzeigen
[autoit]
[/autoit]
Local $sBinary = _Title_Start_png(); Diese Function Liefert die Binary des Bildes
Local $Struct = DllStructCreate("char var1["&BinaryLen($sBinary)&"]")
DllStructSetData($Struct, "var1", $sBinary)
$ptrBinary = DllStructGetPtr($Struct,"var1"); Ich kenne mich leider nicht mit DllStruct aus liegt hier möglicherweise das problem?
$hImage = soil_create_OGL_texture($ptrBinary, 400, 100, 4, 0, $SOIL_FLAG_MULTIPLY_ALPHA); Leider Weiß ich nicht welche SOIL Flag wirklich die richtige ist... oder ob ich überhaupt die richtige function nutze.Das gesammte script ist im anhang.
Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.