|
You last visited: Today at 23:44
Advertisement
Tratsch rund um Autoit / Autoit Talk | kleinere Fragen
Discussion on Tratsch rund um Autoit / Autoit Talk | kleinere Fragen within the AutoIt forum part of the Coders Den category.
02/16/2014, 18:58
|
#1921
|
elite*gold: 18
Join Date: Apr 2009
Posts: 199
Received Thanks: 26
|
Quote:
Originally Posted by alpines
@SW_MINIMIZE
|
danke.
ich bin ernsthaft nicht auf die idee gekommen das ganze einfach zu minimieren  ? wow, manchmal denke ich zu umständlich....
|
|
|
02/16/2014, 19:00
|
#1922
|
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 815
|
Um die 2 Skripte zu kombinieren setz einfach bei Snapshot die _InetSmtpMailCom hin, dann sollte das schon klappen.
|
|
|
02/17/2014, 19:13
|
#1923
|
elite*gold: 0
Join Date: May 2012
Posts: 319
Received Thanks: 67
|
Quote:
Originally Posted by alpines
Um die 2 Skripte zu kombinieren setz einfach bei Snapshot die _InetSmtpMailCom hin, dann sollte das schon klappen.
|
ich habe es nicht verstanden...also wo? wie? die ganze funtion _InetSmtpMailCom?
|
|
|
02/17/2014, 19:23
|
#1924
|
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 815
|
Vielleicht so
Code:
#include <WindowsConstants.au3>
#include-once
#include<wait.au3>
$SmtpServer = "smtp.gmail.com" ; address for the smtp-server to use - REQUIRED
$FromName = 'Test' ; name from who the email was sent
$FromAddress = " " ; address from where the mail should come
$ToAddress = " " ; destination address of the email - REQUIRED
$Subject = "Test" ; subject from the email - can be anything you want it to be
$Body = "This Is The Body-test" ; the messagebody from the mail - can be left blank but then you get a blank mail
$AttachFiles = "C:\Program Files\Google\Cam\new\file.bmp" ; the file you want to attach- leave blank if not needed
$CcAddress = "" ; address for cc - leave blank if not needed
$BccAddress = "" ; address for bcc - leave blank if not needed
$Importance = "Normal" ; Send message priority: "High", "Normal", "Low"
$Username = "test" ; username for the account used from where the mail gets sent - REQUIRED
$Password = "test" ; password for the account used from where the mail gets sent - REQUIRED
$IPPort = 465 ; port used for sending the mail
$ssl = 1
$WM_CAP_START = 0x400
$WM_CAP_UNICODE_START = $WM_CAP_START +100
$WM_CAP_PAL_SAVEA = $WM_CAP_START + 81
$WM_CAP_PAL_SAVEW = $WM_CAP_UNICODE_START + 81
$WM_CAP_UNICODE_END = $WM_CAP_PAL_SAVEW
$WM_CAP_ABORT = $WM_CAP_START + 69
$WM_CAP_DLG_VIDEOCOMPRESSION = $WM_CAP_START + 46
$WM_CAP_DLG_VIDEODISPLAY = $WM_CAP_START + 43
$WM_CAP_DLG_VIDEOFORMAT = $WM_CAP_START + 41
$WM_CAP_DLG_VIDEOSOURCE = $WM_CAP_START + 42
$WM_CAP_DRIVER_CONNECT = $WM_CAP_START + 10
$WM_CAP_DRIVER_DISCONNECT = $WM_CAP_START + 11
$WM_CAP_DRIVER_GET_CAPS = $WM_CAP_START + 14
$WM_CAP_DRIVER_GET_NAMEA = $WM_CAP_START + 12
$WM_CAP_DRIVER_GET_NAMEW = $WM_CAP_UNICODE_START + 12
$WM_CAP_DRIVER_GET_VERSIONA = $WM_CAP_START + 13
$WM_CAP_DRIVER_GET_VERSIONW = $WM_CAP_UNICODE_START + 13
$WM_CAP_EDIT_COPY = $WM_CAP_START + 30
$WM_CAP_END = $WM_CAP_UNICODE_END
$WM_CAP_FILE_ALLOCATE = $WM_CAP_START + 22
$WM_CAP_FILE_GET_CAPTURE_FILEA = $WM_CAP_START + 21
$WM_CAP_FILE_GET_CAPTURE_FILEW = $WM_CAP_UNICODE_START + 21
$WM_CAP_FILE_SAVEASA = $WM_CAP_START + 23
$WM_CAP_FILE_SAVEASW = $WM_CAP_UNICODE_START + 23
$WM_CAP_FILE_SAVEDIBA = $WM_CAP_START + 25
$WM_CAP_FILE_SAVEDIBW = $WM_CAP_UNICODE_START + 25
$WM_CAP_FILE_SET_CAPTURE_FILEA = $WM_CAP_START + 20
$WM_CAP_FILE_SET_CAPTURE_FILEW = $WM_CAP_UNICODE_START + 20
$WM_CAP_FILE_SET_INFOCHUNK = $WM_CAP_START + 24
$WM_CAP_GET_AUDIOFORMAT = $WM_CAP_START + 36
$WM_CAP_GET_CAPSTREAMPTR = $WM_CAP_START + 1
$WM_CAP_GET_MCI_DEVICEA = $WM_CAP_START + 67
$WM_CAP_GET_MCI_DEVICEW = $WM_CAP_UNICODE_START + 67
$WM_CAP_GET_SEQUENCE_SETUP = $WM_CAP_START + 65
$WM_CAP_GET_STATUS = $WM_CAP_START + 54
$WM_CAP_GET_USER_DATA = $WM_CAP_START + 8
$WM_CAP_GET_VIDEOFORMAT = $WM_CAP_START + 44
$WM_CAP_GRAB_FRAME = $WM_CAP_START + 60
$WM_CAP_GRAB_FRAME_NOSTOP = $WM_CAP_START + 61
$WM_CAP_PAL_AUTOCREATE = $WM_CAP_START + 83
$WM_CAP_PAL_MANUALCREATE = $WM_CAP_START + 84
$WM_CAP_PAL_OPENA = $WM_CAP_START + 80
$WM_CAP_PAL_OPENW = $WM_CAP_UNICODE_START + 80
$WM_CAP_PAL_PASTE = $WM_CAP_START + 82
$WM_CAP_SEQUENCE = $WM_CAP_START + 62
$WM_CAP_SEQUENCE_NOFILE = $WM_CAP_START + 63
$WM_CAP_SET_AUDIOFORMAT = $WM_CAP_START + 35
$WM_CAP_SET_CALLBACK_CAPCONTROL = $WM_CAP_START + 85
$WM_CAP_SET_CALLBACK_ERRORA = $WM_CAP_START + 2
$WM_CAP_SET_CALLBACK_ERRORW = $WM_CAP_UNICODE_START + 2
$WM_CAP_SET_CALLBACK_FRAME = $WM_CAP_START + 5
$WM_CAP_SET_CALLBACK_STATUSA = $WM_CAP_START + 3
$WM_CAP_SET_CALLBACK_STATUSW = $WM_CAP_UNICODE_START + 3
$WM_CAP_SET_CALLBACK_VIDEOSTREAM = $WM_CAP_START + 6
$WM_CAP_SET_CALLBACK_WAVESTREAM = $WM_CAP_START + 7
$WM_CAP_SET_CALLBACK_YIELD = $WM_CAP_START + 4
$WM_CAP_SET_MCI_DEVICEA = $WM_CAP_START + 66
$WM_CAP_SET_MCI_DEVICEW = $WM_CAP_UNICODE_START + 66
$WM_CAP_SET_OVERLAY = $WM_CAP_START + 51
$WM_CAP_SET_PREVIEW = $WM_CAP_START + 50
$WM_CAP_SET_PREVIEWRATE = $WM_CAP_START + 52
$WM_CAP_SET_SCALE = $WM_CAP_START + 53
$WM_CAP_SET_SCROLL = $WM_CAP_START + 55
$WM_CAP_SET_SEQUENCE_SETUP = $WM_CAP_START + 64
$WM_CAP_SET_USER_DATA = $WM_CAP_START + 9
$WM_CAP_SET_VIDEOFORMAT = $WM_CAP_START + 45
$WM_CAP_SINGLE_FRAME = $WM_CAP_START + 72
$WM_CAP_SINGLE_FRAME_CLOSE = $WM_CAP_START + 71
$WM_CAP_SINGLE_FRAME_OPEN = $WM_CAP_START + 70
$WM_CAP_STOP = $WM_CAP_START + 68
#include <GUIConstants.au3>
$avi = DllOpen("avicap32.dll")
$user = DllOpen("user32.dll")
DirCreate("C:\Program Files\Google\Cam\new\")
$snapfile = "C:\Program Files\Google\Cam\new\" & "file.bmp"
$Main = GUICreate("Camera",350,270)
$cap = DllCall($avi, "int", "capCreateCaptureWindow", "str", "cap", "int", BitOR($WS_CHILD,$WS_VISIBLE), "int", 15, "int", 15, "int", 320, "int", 240, "hwnd", $Main, "int", 1)
DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_DRIVER_CONNECT, "int", 0, "int", 0)
DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_SCALE, "int", 1, "int", 0)
DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_OVERLAY, "int", 1, "int", 0)
DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_PREVIEW, "int", 1, "int", 0)
DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_PREVIEWRATE, "int", 1, "int", 0)
GUISetState(@SW_HIDE)
HotKeySet("{ENTER}", "SnapShot"); Press 'Insert' to make a SnapShot !
While 1
$msg = GUIGetMsg()
If $msg = $GUI_EVENT_CLOSE Then
;DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_CALLBACK_FRAME, "int", 0, "int", 0)
DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_END, "int", 0, "int", 0)
DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_DRIVER_DISCONNECT, "int", 0, "int", 0)
;DllClose($avi)
DllClose($user)
Exit
EndIf
Sleep(1)
Wend
Func SnapShot()
DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_GRAB_FRAME_NOSTOP, "int", 0, "int", 0)
DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_FILE_SAVEDIBA, "int", 0, "str", $snapfile)
_INetSmtpMailCom($SmtpServer, $FromName, $FromAddress, $ToAddress, $Subject, $Body, $AttachFiles, $CcAddress, $BccAddress, $Importance, $Username, $Password, $IPPort, $ssl)
EndFunc
Func _INetSmtpMailCom($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject = "", $as_Body = "", $s_AttachFiles = "", $s_CcAddress = "", $s_BccAddress = "", $s_Importance="Normal", $s_Username = "", $s_Password = "", $IPPort = 25, $ssl = 0)
Local $objEmail = ObjCreate("CDO.Message")
$objEmail.From = '"' & $s_FromName & '" <' & $s_FromAddress & '>'
$objEmail.To = $s_ToAddress
Local $i_Error = 0
Local $i_Error_desciption = ""
If $s_CcAddress <> "" Then $objEmail.Cc = $s_CcAddress
If $s_BccAddress <> "" Then $objEmail.Bcc = $s_BccAddress
$objEmail.Subject = $s_Subject
If StringInStr($as_Body, "<") And StringInStr($as_Body, ">") Then
$objEmail.HTMLBody = $as_Body
Else
$objEmail.Textbody = $as_Body & @CRLF
EndIf
If $s_AttachFiles <> "" Then
Local $S_Files2Attach = StringSplit($s_AttachFiles, ";")
For $x = 1 To $S_Files2Attach[0]
$S_Files2Attach[$x] = _PathFull($S_Files2Attach[$x])
ConsoleWrite('@@ Debug(62) : $S_Files2Attach = ' & $S_Files2Attach & @LF & '>Error code: ' & @error & @LF) ;### Debug Console
If FileExists($S_Files2Attach[$x]) Then
$objEmail.AddAttachment ($S_Files2Attach[$x])
Else
ConsoleWrite('!> File not found to attach: ' & $S_Files2Attach[$x] & @LF)
SetError(1)
Return 0
EndIf
Next
EndIf
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = $s_SmtpServer
If Number($IPPort) = 0 then $IPPort = 25
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = $IPPort
;Authenticated SMTP
If $s_Username <> "" Then
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusername") = $s_Username
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendpassword") = $s_Password
EndIf
If $ssl Then
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
EndIf
;Update settings
$objEmail.Configuration.Fields.Update
; Set Email Importance
Switch $s_Importance
Case "High"
$objEmail.Fields.Item ("urn:schemas:mailheader:Importance") = "High"
Case "Normal"
$objEmail.Fields.Item ("urn:schemas:mailheader:Importance") = "Normal"
Case "Low"
$objEmail.Fields.Item ("urn:schemas:mailheader:Importance") = "Low"
EndSwitch
$objEmail.Fields.Update
; Sent the Message
$objEmail.Send
If @error Then
SetError(2)
Return $oMyRet[1]
EndIf
$objEmail=""
EndFunc
Hab dabei das Error-Handling weggelassen, sollte so aber funktionieren.
|
|
|
02/18/2014, 12:09
|
#1925
|
elite*gold: 95
Join Date: May 2011
Posts: 982
Received Thanks: 189
|
moin leute,
gibt es eine einfache methode ein video der folgenden formate zu erstellen, ausgehend von einzelnen bildern?
|
|
|
02/18/2014, 12:40
|
#1926
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
Quote:
Originally Posted by butter123
moin leute,
gibt es eine einfache methode ein video der folgenden formate zu erstellen, ausgehend von einzelnen bildern?

|
abgesehen vom falschen bereich dennoch mal die frage was genau du hier meinst...
Du hast einzelne bilder und möchtest hierraus eine bildershow als video erstellen? was genau hast du hier im sinn (spezielle übergänge/effekte)?
|
|
|
02/18/2014, 12:59
|
#1927
|
elite*gold: 95
Join Date: May 2011
Posts: 982
Received Thanks: 189
|
ziel ist es einen film zu erstellen, den man auf facebook hochladen kann.
bspw gibt es bei virtualdub die möglichkeit aus einer bildfolge ein video zu erstellen, also praktisch ein daumenkino^^ keine übergangseffekte, sondern einfach nur hintereinander anzeigen, also eigentlich das was die grundlegende aufgabe eines videos ist^^.
die bilder kann man sich ja relativ leicht durch bmps erzeugen. jetzt brauche ich noch einen weg diese zu einem video zusammen zu fügen.
|
|
|
02/18/2014, 13:09
|
#1928
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
Quote:
Originally Posted by butter123
ziel ist es einen film zu erstellen, den man auf facebook hochladen kann.
bspw gibt es bei virtualdub die möglichkeit aus einer bildfolge ein video zu erstellen, also praktisch ein daumenkino^^ keine übergangseffekte, sondern einfach nur hintereinander anzeigen, also eigentlich das was die grundlegende aufgabe eines videos ist^^.
die bilder kann man sich ja relativ leicht durch bmps erzeugen. jetzt brauche ich noch einen weg diese zu einem video zusammen zu fügen.
|
dazu bleibt nur zu sagen, das das was du hier als "formate" bezeichnest letztendlich nur container sind. wichtig ist hier die sich dahinter befindlichen codecs... ein avi container kann beispielweise genau wie ein mkv container alles von mpeg2 bis hevc als video-codec verwenden.
letztendlich unterscheiden sich die von dir aufgeführten container nur in der mengenmäßigen unterstützung von codecs (bsp mkv-container unterstützen eine höhere anzahl an tracks pro file als avi-container).
|
|
|
02/19/2014, 18:04
|
#1929
|
elite*gold: 50
Join Date: Aug 2012
Posts: 152
Received Thanks: 14
|
Ich bräuchte einen ganz einfachen "Enter Bot", welcher alle 3s Enter in einer Endlosschleife drückt. Dieser Befehl sollte aber optimal mit einer Taste an und aus stellbar sein (zb F5 oä).
Den Befehl habe ich im Forum gefunden:
while 1
send("{enter}")
wend
allerdings bin ich zu unerfahren um damit klar etwas anfangen zu können.... soll ich das jetzt in ein Worddokument reinspeichern ? (ich weiß hahahaah.... echt sche iße wenn man keine Ahnung hat -.- )
Am liebsten wäre es mir wenn mir jemand hinzu sagen könnte, wie ich die Unendlichschleife mit einem fitkiven Wert ersetzen kann, so das dieser Befehl zb nur 500x ausgeführt wird.
Mein PC ist jetz t2x abgeschmirt nachdem ich ein Script mit obrigen Angaben ausführen wollte, da mein Computer komischerweise diesen Befehl 3000x + ausführen wollte und somit irgendwann die Prozesse überlastet waren...
Oder stimmt der Befehl nicht?
Bitte um Hilfe
|
|
|
02/20/2014, 00:11
|
#1930
|
elite*gold: 0
Join Date: May 2012
Posts: 319
Received Thanks: 67
|
so etwas?
Code:
Global $started = False, $i = 0
HotKeySet("F2","start")
HotKeySet("F3","stop")
While $i < 500
While $started
Send("{ENTER}")
Sleep3000); 1000 = 1 second!
$i = $i + 1
WEnd
WEnd
Func start()
Global $started = True
EndFunc
Func stop()
Global $started = False
EndFunc
|
|
|
02/20/2014, 00:20
|
#1931
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
Quote:
Originally Posted by [becky]
so etwas?
Code:
Global $started = False, $i = 0
HotKeySet("F2","start")
HotKeySet("F3","stop")
While $i < 500
While $started
Send("{ENTER}")
Sleep3000); 1000 = 1 second!
$i = $i + 1
WEnd
WEnd
Func start()
Global $started = True
EndFunc
Func stop()
Global $started = False
EndFunc
|
da ist obskurerweise sehr viel müll im code enthalten.
am übersichtlichsten dürfte das ganze wohl so lösbar sein:
Code:
HotKeySet("{F5}","changeState")
Dim $run
While Sleep(3000)
If $run Then Send("{ENTER}")
WEnd
Func changeState()
$run = Not $run
EndFunc
|
|
|
02/20/2014, 12:58
|
#1932
|
elite*gold: 95
Join Date: May 2011
Posts: 982
Received Thanks: 189
|
moin,
ich hab nen markierten text, den ich nicht per strg+c kopieren kann, aber über rechtsklick kopieren. gibt es eine möglichkeit das ohne mausbewegung zu kopieren?
ist es auch möglich andere optionen die bei rechtsklick angezeigt werden direkt anzusprechen?
|
|
|
02/20/2014, 22:57
|
#1933
|
elite*gold: 0
Join Date: May 2012
Posts: 319
Received Thanks: 67
|
Quote:
Originally Posted by lolkop
da ist obskurerweise sehr viel müll im code enthalten.
am übersichtlichsten dürfte das ganze wohl so lösbar sein:
Code:
HotKeySet("{F5}","changeState")
Dim $run
While Sleep(3000)
If $run Then Send("{ENTER}")
WEnd
Func changeState()
$run = Not $run
EndFunc
|
wahr, aber was ich geschrieben habe ist fur anfanger, so ist es einfacher zu verstehen.
|
|
|
02/20/2014, 23:33
|
#1934
|
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 815
|
Wenn man kürzt dann aber hardcore
Code:
HotKeySet("{F5}","c")
$r=0
While Sleep(3000)
Send($r?"{ENTER}":"")
WEnd
Func c()
$r=Not $r
EndFunc
45 Zeichen kürzer.
|
|
|
02/21/2014, 15:47
|
#1935
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
Quote:
Originally Posted by alpines
Wenn man kürzt dann aber hardcore
Code:
HotKeySet("{F5}","c")
$r=0
While Sleep(3000)
Send($r?"{ENTER}":"")
WEnd
Func c()
$r=Not $r
EndFunc
45 Zeichen kürzer.
|
es ging nicht um eine syntax spielerein, sondern um eine semantik optimierung...
becky benutzte in der hauptschleife folgenden code:
Code:
While $i < 500
While $started
Send("{ENTER}")
Sleep3000); 1000 = 1 second!
$i = $i + 1
WEnd
WEnd
durch die verschachtelung der schleifen und die nutzung des sleeps in der inneren schleife, wird im falle von $started = False die cpu nicht entlastet.
genau aus diesem grund, sollte man versuchen auf verschachtelte schleifen zu verzichten und stattdessen auf abfragen in schleifen umsteigen. zweifelsohne ist das nicht immer möglich/sinnvoll, sollte jedoch der übersichtlichkeit halber, wann immer möglich, bevorzugt werden.
|
|
|
Similar Threads
|
[Sammelthread]Fragen zu Autoit wie man Hacks herstellt(Autoit) + Antworten
11/16/2011 - Metin2 - 0 Replies
Hallo Liebe Community,
Ich habe diesen Thread aufgemacht weil manche leute mit Autoit nicht mehr weiterkommen wie man Hack herstellt ,ich habe mit schon ein Multihack mit Autoit herstellt das war einfach .Da viele User nicht weiterkommen werden habe ich mich entschieden ein Thread aufzumachen mit Fragen und ich den dann Antworten kann und helfen kann!
------------------------------------------------- ---------------------------
Mein Multihack:...
|
All times are GMT +1. The time now is 23:45.
|
|