1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. UEZ

Beiträge von UEZ

  • Grafik(en) in *.exe einbinden ohne Fileinstall

    • UEZ
    • 10. August 2011 um 12:21

    Vielleicht postet du mal dein komplettes Skript inkl. den Anhängen, damit man sehen kann, was du so probierst.

    Gruß,
    UEZ

  • Grafik(en) in *.exe einbinden ohne Fileinstall

    • UEZ
    • 10. August 2011 um 10:51

    Du musst die resources.au3 includen, d.h. so würde ein Code aussehen:

    [autoit]


    #include <resources.au3>
    ;#include "resources.au3" ;wenn sich die Datei nur im gleichen Verzeichnis befindet
    ....

    [/autoit]

    Dann sollten die Befehle aus der resources.au3 zur Verfügung stehen, wenn sich die resources.au3 in dem Include Verzeichnis befindet.

    Gruß,
    UEZ

  • Stringlänge

    • UEZ
    • 9. August 2011 um 22:02

    Man kann auch meine Funktion zum Einzeiler machen, benötigt aber die String.au3 ;)

    Gruß,
    UEZ

  • Stringlänge

    • UEZ
    • 9. August 2011 um 16:23

    Kann ich dir auch nicht sage; vielleicht ein Bug!?

    Gruß,
    UEZ

  • Grafik(en) in *.exe einbinden ohne Fileinstall

    • UEZ
    • 9. August 2011 um 16:13

    Wenn du das Bild in ein Binärstring umgewandelt hast,

    Convert to Binary String.au3

    Spoiler anzeigen
    [autoit]


    ; ============================================================================================================================
    ; Purpose : Converts any file to HEX binary string
    ; Author : Ward / UEZ
    ; ============================================================================================================================

    [/autoit] [autoit][/autoit] [autoit]

    Local $VarName = StringStripWS(InputBox("Convert to Binary String", "Select a name for the variable." & @CRLF & @CRLF & "$ will automatically added to the beginning of the variable!:", "BinaryString"), 3)
    If $VarName = "" Then Exit

    [/autoit] [autoit][/autoit] [autoit]

    Local $FileName = FileOpenDialog("Open a file", @ScriptDir, "DLL file (*.*)")
    If $FileName = "" Then Exit

    [/autoit] [autoit][/autoit] [autoit]

    Local $Handle = FileOpen($FileName, 16)
    Local $BinaryString = FileRead($Handle)
    FileClose($Handle)

    [/autoit] [autoit][/autoit] [autoit]

    Local $LineLen = 1024
    Local $DllString = String($BinaryString)

    [/autoit] [autoit][/autoit] [autoit]

    Local $Script = "Func " & $VarName & "()" & @CRLF & @TAB & "Local _" & @CRLF & @TAB & "$" & $VarName & " = '" & StringLeft($DllString, $LineLen) & "'" & @CRLF
    $DllString = StringTrimLeft($DllString, $LineLen)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    While StringLen($DllString) > $LineLen
    $Script &= " $" & $VarName & " &= '" & StringLeft($DllString, $LineLen) & "'" & @CRLF
    $DllString = StringTrimLeft($DllString, $LineLen)
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    If StringLen($DllString) <> 0 Then $Script &= " $" & $VarName & " &= '" & $DllString & "'" & @CRLF
    $Script &= @TAB & "Return Binary($" & $VarName & ")" & @CRLF & "EndFunc"
    ;~ ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $Script = ' & $Script & @crlf & '>Error code: ' & @error & @crlf) ;### Debug Console
    ClipPut($Script)

    [/autoit] [autoit][/autoit] [autoit]

    MsgBox(64, "Convert to Binary String", "The result is in the clipboard, you can paste it to your script.")

    [/autoit]

    dann kannst du die Funktion Load_BMP_From_Mem nehmen, um das Bild in der GUI anzuzeigen.

    Beispiel:

    Spoiler anzeigen
    [autoit]


    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GDIPlus.au3>
    #include <Memory.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Global Const $IMAGE_BITMAP = 0
    Global Const $STM_SETIMAGE = 0x0172
    Global $msg
    Global Const $hGUI = GUICreate("Test", 600, 250)
    Global Const $idLogo = GUICtrlCreatePic("", 215, 10, 169, 68)
    Global Const $idButton = GUICtrlCreateButton("", 266, 150, 78 , 81, $BS_BITMAP)
    Global Const $hButton = GUICtrlGetHandle($idButton)

    [/autoit] [autoit][/autoit] [autoit]

    Global Const $Bmp_Logo = Load_BMP_From_Mem(Logo4_GIF(), True)
    _WinAPI_DeleteObject(GUICtrlSendMsg($idLogo, $STM_SETIMAGE, $IMAGE_BITMAP, $Bmp_Logo))
    Global Const $Bmp_Button = Load_BMP_From_Mem(Merlin_GIF(), True)
    _WinAPI_DeleteObject(_SendMessage($hButton, $BM_SETIMAGE, $IMAGE_BITMAP, $Bmp_Button))
    _WinAPI_UpdateWindow($hButton)
    GUISetState()

    [/autoit] [autoit][/autoit] [autoit]

    _WinAPI_DeleteObject($Bmp_Logo)
    _WinAPI_DeleteObject($Bmp_Button)

    [/autoit] [autoit][/autoit] [autoit]

    While True
    $msg = GUIGetMsg()
    Switch $msg
    Case $idLogo
    MsgBox(0, "Information", "Bild wurde geklickt!")
    Case $idButton
    MsgBox(0, "Information", "Button wurde geklickt!")
    Case $GUI_EVENT_CLOSE
    GUIDelete($hGUI)
    Exit
    EndSwitch
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    ;======================================================================================
    ; Function Name: Load_BMP_From_Mem
    ; Description: Loads an image which is saved as a binary string and converts it to a bitmap or hbitmap
    ;
    ; Parameters: $bImage: the binary string which contains any valid image which is supported by GDI+
    ; Optional: $hHBITMAP: if false a bitmap will be created, if true a hbitmap will be created
    ;
    ; Remark: hbitmap format is used generally for GUI internal images, $bitmap is more a GDI+ image format
    ;
    ; Requirement(s): GDIPlus.au3, Memory.au3
    ; Return Value(s): Success: handle to bitmap or hbitmap, Error: 0
    ; Error codes: 1: $bImage is not a binary string
    ;
    ; Author(s): UEZ
    ; Additional Code: thanks to progandy for the MemGlobalAlloc and tVARIANT lines
    ; Version: v0.95 Build 2011-06-14 Beta
    ;=======================================================================================
    Func Load_BMP_From_Mem($bImage, $hHBITMAP = False)
    If Not IsBinary($bImage) Then Return SetError(1, 0, 0)
    Local $declared = True
    If Not $ghGDIPDll Then
    _GDIPlus_Startup()
    $declared = False
    EndIf
    Local Const $memBitmap = Binary($bImage) ;load image saved in variable (memory) and convert it to binary
    Local Const $len = BinaryLen($memBitmap) ;get length of image
    Local Const $hData = _MemGlobalAlloc($len, $GMEM_MOVEABLE) ;allocates movable memory ($GMEM_MOVEABLE = 0x0002)
    Local Const $pData = _MemGlobalLock($hData) ;translate the handle into a pointer
    Local $tMem = DllStructCreate("byte[" & $len & "]", $pData) ;create struct
    DllStructSetData($tMem, 1, $memBitmap) ;fill struct with image data
    _MemGlobalUnlock($hData) ;decrements the lock count associated with a memory object that was allocated with GMEM_MOVEABLE
    Local $hStream = DllCall("ole32.dll", "int", "CreateStreamOnHGlobal", "handle", $pData, "int", True, "ptr*", 0)
    $hStream = $hStream[3]
    Local $hBitmap = DllCall($ghGDIPDll, "uint", "GdipCreateBitmapFromStream", "ptr", $hStream, "int*", 0) ;Creates a Bitmap object based on an IStream COM interface
    $hBitmap = $hBitmap[2]
    Local Const $tVARIANT = DllStructCreate("word vt;word r1;word r2;word r3;ptr data; ptr")
    DllCall("oleaut32.dll", "long", "DispCallFunc", "ptr", $hStream, "dword", 8 + 8 * @AutoItX64, _
    "dword", 4, "dword", 23, "dword", 0, "ptr", 0, "ptr", 0, "ptr", DllStructGetPtr($tVARIANT)) ;release memory from $hStream to avoid memory leak
    $tMem = 0
    If $hHBITMAP Then
    Local Const $hHBmp = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hBitmap)
    _GDIPlus_BitmapDispose($hBitmap)
    If Not $declared Then _GDIPlus_Shutdown()
    Return $hHBmp
    EndIf
    If Not $declared Then _GDIPlus_Shutdown()
    Return $hBitmap
    EndFunc ;==>Load_BMP_From_Mem

    [/autoit] [autoit][/autoit] [autoit]

    Func Logo4_GIF()
    Local _
    $Logo4_GIF = '0x474946383961A9004400F700009292924040406A6A6BE1E1E1CDD8E35689B66499C6C3CDD8BFBFBFEDEDED3A648DDBE3ECA5BED69AB1C75A94CC33333579A3C8C6C6C699BDE0AAAAAAD0DBE5E6ECF1A7C2DD949DA67F7F7F848484F1F1F1B0B0B0B8C0C9E8E8E8FCFCFCA3C3E2212125B4B8C74C5863D5D5D5F4F4F45B687471727246719A515C684C4C8D00004236367C989898A0A1A1A4A4A49D9D9DCECECE8B99A55B5B5B6795B9B9B9B93647578BB4DD677684C8C8C800007B92ACC5606061A5ADB54365868D8D8D9ABBDB5252525783ABD9D9D97B8894C1C1C12A4764548EC757799979818BE4E4E499A2AE00006A000024010134D1D1D192B2D1707B85ADADAD416C96C7D2DC83ACD4A9B0BBB6B6B6000054E6E6E623237994B9DE7CA9D3606C78838C94ABC9E6DCDCDC49494A7DACD9000073FAFAFA65717D4D83BA9BADBE87919B56636EA8C6E343495627384A8AACCD3A5269749AB972A4D38989892A2A2ED4DEE727415B4B7DACF6F6F6CAD5E0F8F8F80000128787A74B79A2111111233C54EBF0F493A2B0BBC5CF9898B9181B26527DA6EAEAEA669DD06187A8C3C4D099B5D293B6D834537118187C344B616DA2D4333A4344515D9AA7B3DFDFDF8EA3B8797979788CA09DC0E2889EB48EB0D247617AA3B9CE0000609EA9B5385E8435597DB3B3B37691AB5B91BE9EBAD585B1DBD6E0E9AEBAC41B2434ABB6C1'
    $Logo4_GIF &= '67678981A4C26B92B00707071010317F868D90979FD0D2DB405C783C5E7E729EC44679AC3D5A751F34496DA0CC1C1C69B1CCE850719185AACD9FB6CB4374A233404DE0E7EE5959847375769599A1666769A1B4C6B0B3B52424562F51730B0B7D7A7AA724303B3154770D0D7693A7B9BBBBBC707981487DB1A7A7A781A7C93D566EAECAE70909648EA8C179A6D00C0C4E1414454F83AFFEFEFEEEF3F6F0F4F7B1B6BAB7B7B7A0BFDDA9A9C3C4C4C41019227AA1BFA1A7AC628FB34D6C8943437445457FCBCBCB2E4D6BA1A5A8ABABAB7C7C7D9A9A9B5089C1E3E9EF3B3B5FE8E8ED6B6B9F77779075A7D678A9D787B0D669839B90B8DEE9E9E9D9E1E9D9D9E110106B0E0E28000000FFFFFF00008021F90400000000002C00000000A90044000008FF00FF091C48B0A0C18308132A5CC8B0A1C38710234A9C48B1A2C58B18336ADCC8B1A3C78F20438A1C49B2A4C99328538ECC92224F1E532BF6E55049B3A6C71521FCE9F4A0E10B915E326D0A1D2AD1984E7FD8EA9020A101DF8816C3C4CC244A9564B22C2B56982BB7228BA264530DE6D9A96190D9B3589E460D5BB56D4645E6F2188257A76E1D0D09060D88F0AB5716B00353E8AC93B785A475EBE0981D80234335316E23572CB6025082A3FE3C8CA9BB5429DE0123D4F5AA95A3183C7F2406E11B14E001302001F0C98664454D26B692732F3467E8A80712793B081F3E1C'
    $Logo4_GIF &= '5FDE244288E4019439816C7C6004747821038BF024E724595BA2BB7BC22C397502FFC7475C3896F3E8D377B04E82307104113A6400323CC90816A46E7BDF3F301E369D4D61914412907CC3822F2838A2A0083B20E1020C034698846C024A9884000F5871DE802338F3C01590F1D75D32DE88874F84060A20020A687071C38B379081060A22F8E2821316E698040B0F0010E100424CD0880A218A289922ADE8944007032E83810868DC30440C7E286386190D5CF9C80593DC80C60E2C40A8230D3424E1830C03A4095A0B0F1069E491FAF873073E699EE3030A5C4CE90796C1E482C99F98E4124C968FF83144093BBC20849A6A060046121880A126247692E2E69B6D21895A12696E000C1A7A36100C260C946AAAA9810673A51243A0B14E048C0EFF00061000C8000624690A818000AA5CC11DA655E544028190B4800219675462869FA55AE0AC05693C8B6A2E84C6C00530CB40A22D24EB082089091968FB050C2D04D0C4153389A1C2BAECB67BA96EEABAABC2152119830D09037CF1450B22901143240DE4020A03DD3C9BC6C1083BDB0D03A0506B86327E9450020DFA566CF1174E74024C202A64F28F18206020F2C8246300C2AF92815CB2C83BA8F0D10A1AE0ABAFB125FCDBC0210377F3C107087B114D345E1CFC8105DD7403CA210DE8A04C0C9708B0CCC5FA0A014327BEC471AE54990480D9D63A81A1026E132D91C9'
    $Logo4_GIF &= 'D864A34C51D65CFBA30E1EE992ED3645C518320616420489023493008C73D11FE8FFFC81175E58306A1AD1A4B173DF3F1CDDC034914CD2860944D45DF7084E7CE3820056ABB0C44C2A6090F6515FC8D004D8115DF14000A8A7FEA145686F3D40067888B10408A9D7DEC444BDD4318810232060C2223744A2C32187FCD00D25C8EF9C8B12EA188280386658B03325DD48F003224F285D09396DC031C2F7239CB341066080D084E65335E1C3E7A8E1000C134552C404025CD3C07645AD1FA5C1AE782CD139D71EE807E914528C566800129483431B2EE1091D3C01113F90800491478948B0A2157DC8A03B42E08743204F823FD0C2212CC1387B40030D2E001F02E0400A7ECCEB365399DF51B041C3FF604303D989DD456488993AB040870611C315FFD8E5AB83E42F33F8E0860062F7BFAD9DA31F666B480A06619F117402056D384225D8F0402D684182129CC62AF2D1876C68431B7DC04229620046097811119660C3293CD18336F822024E70C23224E1C24C4885207880816FEE70070FFCA70E4E70011405228626F4E39190EC47131A1949484E92873AC1C600D881077411E40A4C00011046B68307F4E35DFF38A20792B844FF790E331DC0413F4004912A2440084E804106167189429C820D96B8873085A9857B0CE10F1528E319B35101399CC113C51CA60D2C818B3992C31522B8911388000052D0B220FDE861023470'
    $Logo4_GIF &= '87FFDC61042E4885C7FED1C4AD9DF295EEDC43000499C9DFE000757B0851131E40FF3FAE2500037B70994054994413E0810901680166789200D49DCC2159C0552EAD80824490A3101060433D6CC0D17BD8E01EF6B8C0022A90CC0CF6A1020BF80617DCC0D196D60317CF98C12D7AB0086644000638880210BE3990D9F946031DD8C01874728720C541A0ED3C0A0C24094FD0F5436BEC234123E8D5841DB04F279078C0ED5209D59D14140FE1641F364C30BA86F402393080010B6AE08A1314001654A84728E63A574F904114BCE0853B484A5277F082024AE00215E81A0A2A6C0102E338420F6481820DC0E01C5630812AA2983F0F24001251B8834EC630804E988B734DF5C7085EC0D4AD8D200A4FE51A367E23844E1C55054058286892A0D9A3FF24600F1E2328370C1A56CCAC165FCB00C2241BA2840138E11CDFF045117A70840218600B61886E742180020E2C80170B58403EF2915DEC8AE200CC388274C3400F6A40A0008290822C16C18273E000013EF0265BAE60D5CDA6050E24D8490782CB04D0628604110040698F42021CB023B548B1611D20B10C00F802042AC003248E72077201A0130318AA9232D05F824616AC3BF94F663A60205F04007E0C49C639BE708E73744204E8E8011D0AF08937CC831E38A6C72D582187EC8A620A7FE0C00128B0DD7C50A0142238023DE6C1E4371800BD279045112441847310E1'
    $Logo4_GIF &= '05538D5F3BEFC01801D0209309888024749854000BB8094D35733F40D089248CE1FF3F9625C23A1CAA8207602601914D451C06E19B2410610F62EB2A129578D00D38810422462400C01000F3C50F215970C20870F00D76D420115298F1271CC0883774FA165C2080284421870354E10CCC50C21F082007524F81158E3040A71941080740F9154540C304704004670041730461C20628AC2B192C83C0E7801D64CA1CE0018B27023E38251EFA39E24E00010F78389F097C13D41D80D83703B0C25175BB44153021CD1158473FB2AD9F85AC20971158C62AE6908813CCD8080E2004211821885DFC61D43F2E45AB7621021E1C800014900305FE500259E8BBD64628001D4EB0097438C20711F846147630D96053BB0E23B0C2038E3D1827B46091CCFF3E33BAA3BD044C7AA0039DF0762696A03E6E776289BDF5C71820B101E192BB7F65FE46066629864723A4178FFD8615B830074E64BA1DF87680030CB00825249C027618C519D0D00868D4000AA39802C2B15E8A5DF440EA0E30423B265EF11AD894085100862ADAFD0F3C5C463C3098C003E0794E67EC815E2977366AA00D459777C00AC0E8DF3F0CFFE19C8FE10BEA000313AE20E85512DA95FFFD06CB1F620A1C4480081B4041D34F108B321821EAC8E0821D144E010E586B173598F83162F007B153800007880129E89076B5B31D1D73E002111010055ED13DE71A8840'
    $Logo4_GIF &= '0B5201CFC747E1A8EC44B7CAFF4BF89653DBF2AD5CFCF5BFEAF82F4C40F2945F28FF2B81BEF2453A441E9426C28B9B2E85D29FDE010AD8C590294081033CE2063558C3098C608057D4C0E004807004C001685004A7670465100BBA50717C800644B00CEA20599EC45533940008C002FDB06D9B950456205C39107868467D2CE772E3C71D24B85BDFB6595FE00CE0577925C86C9B777EDF8000CBB07E4E577A505706A4F00863676A482002C7200BCE956F6D40067F6007014800535076E8707A65D00C52C08068408313200081308195850F568001088644082003F00382E5677DBE5182DA578628D87D2C38792E787930687E0D610A345883A27783650075E8000576407F5977065CD0088B70028210048428086BA009489884077001A42005EDFF908052C009E8C0075CB00C34E00C72F74DEDE40158D009062568613666EA227D82076023B87D84061927C85B98F1786B187E68D84A6F18450A610EDC40269DC0057C800C0A100BCDD00EC8E008F347007FA00450A00635407028B08C342202CCB087B717807F40067C500690C80945E07634C00D2EC0711358733B3108D0860776466030E003E4477DD34760D57782D9B78A29A8732BD882E2E78663F810EFD009DB6805ABC007C4A000BAD00C0A400A1CD0839A307035F007B7178D49487FF4178076500A6A5004CDA00B0A800C73E0085D40039DF00240D02B31446DF7'
    $Logo4_GIF &= '820FEA967388A44898C78EEBF86CA7188B8A078F6A488F2E99922C09870C510B51FF40035660052F3007E8B009BA100BB31003D0B884674006B0A709A2905D4CA95DA4E6900E79007E400AC46091C4C00725D00256B00100602EED1648574561233001203044A41882ECD8925E757967B896AC7814AE28936B298BF7E810C9A0959D60052F56044E3707287070F5370AAC70036AD0064840014C59644F490076300507E098077000A30005A4B00992380BABD0099D300119A055EBF40F3977558FB7016D2286225878A8B844AA888A6FA982AFD88674799AB498103980041BA0999D0005FE5804C71076A5B02547A9207F596A1C509CC5390AA3500A55C0039AF0084AF09C7E700143B00BB38091B330011BB0012D60021CF32B20B3353494361EFF90043400044C609A69899A33D99683D69A3A27042E209783169BE9399B089103E5E00CD9B901CEB00645000E25800432C22209D20835D0054A7001ACF00B17D0A00A7A065D80045040065C500233B28C0A12087CC0078EC00D1B10052C2003FCF04D4794141DC03B5F3008750067834004EF8396CFB69283A796484403EFB87D34E09EE7C40E27068B73998E04860331E810B5F002EA909DDC200273C007A4000E81400A507A0C6B7009B7C0225CC00C48B00A5DD005AB80043750020952038D700CC700A581000EE0400A7C300B5DD00951E00C70602EDF445F0BD50108'
    $Logo4_GIF &= 'C00E00E00C3090001E80141A8003EB906D69760E2707A333AA9E3B9100446050AAFF386C604604189082F7622756F37334891A307060F68910628001CEA00E51B001BF300BE8C0090A20057A700D055000E36000D44005C084330C6001A572343AF00CB0E00633F00905700D7A609545C007BBC00D51A00E2F6002E6D36E49350623C0A30F00062CA00147510730405A867A073E518AED2892242004E8C81DED742F42C049BD655934B00E10E6A3F309A444C56036C91039F00EECE00C13300134A0A4BC4807EDB069FB360F61F05112F037D1600BB650381F2001F7100A61F006846000B6460752609D6DAA0E2EE00360E04245226C3D748E817050BE8019E734017B60A83CA10101D00FD476A864F8534900029244A709F61B1E204FD33AAE3BFFD00F63039BEC9A19780104FD30790FB10F19D002F47AA4FEB90927700DED6000B2E6AF36A0059420B0046BB0081B0A5BC0B006F009D76091C12A02CB3001CEF00255732E618149A8710E700061D72A04EA7054B1954957658A50D4042FB0137D8A19EBD0047B800531F3660034001BE00B0FD03F960AB31E6048984103FDE510F10A002E50AF9DB00AA40A90D7F00906400B6F1006A1F045526B0B4173B0F76058B490B5BE2A0557B906C2F0A62D0007170B6C03D10FD28A0D099000E49901E0B02E1A88171D0003CE602E7B4018E3C41483D00109300677801709300034'
    $Logo4_GIF &= '30744B70053290045F000958304E840103A2D304020003233000095007FF359692FF0004A94024AD031C83101A89B70420D301FA920483D0BDDD0A0740D410D2E00BECE002CEE00C088006FE88AA957BB95B500F882001510B389FDB0D5A6003610001B4C0AB10CB0973300B67D009CEE0022C2000E6C353A0E90F426005EA30012E0007C080B359830F1A07B6EC800127D604BE408308800056D0023E80013B30015150AF212C008B746E2EF002F85BAF2FA0C24CD07226F0B856800038D0620830013E200060B0074C701B59F3A71B00B6417C6DDCD1044010B6443B01140B0732A0788C3B0C1970BF2EE002CB20027CE0747A1004960B01010C41517B38088C0854C0C03350007A2005B886993470C6EC30672E643659430334BC0332200340FFE0B362F300CEE00B889CC840207999D004329001DF22003210007BD008C080C888BCC88B9409080504897CCA40F000F0D372AE6102BE200992E00B02B00360F000A930793391090FA00E9210C98A0C068A97034D1007B372CABF2CC60E21066AE0032FD0022DE0020880026B8CAA41D0AAB0F00CF5F0403FB0CDD7134710000B335008E9D5C7ABB00CCECC0EF3C10F4D407702E14895F44843FC0FEE5C497840242DB7077190CF7B70504CF0CE3FEB9D11F6CE930719C28C077B0002F91C0720B007EBD6316131CF91946D21920357806DF43C5C0F9103D2B0033EC00ECE'
    $Logo4_GIF &= '0CCDFC9B080AA00782300E33000BA7800B5CF4044F1047CF100E6E300E41A0073DFF808D6BD005E6DC022F00C6193C9BB2B304401DD49BC348421DD47F940334C704E739734557D4401D1639D0D445FD478C34444ACD04E7C3D4B8F1D353CD1651EDD4549DD1D520001DEDCC2D4004675003E8F00AE4A0078560D26E100EA730D7E100D3A820CEB7F00A89300722B001DC70CE3EB00371709E430D12511DD61B91038A5D74882D1462600D020007ECF002CDAC8F25406F3D400E47100485800A9EEDD9855008473053EB550343100113A0D32C000782BDD403042C91F1D83B90010040D93EBC0C51C0058B9008AED003B77004C00DDCB7400EAF000D8B000D4850833A8DA718200371D047AF0DDBB15D0D4020093EC002B68DC6CB70013780456DFF000DB2200BD0F0DD6880043CF00D9DD00293CD023E10BE20B0D44627DDDD21440F2000B4CD02EC90DF2F30011E9A0EBFD00543D00567F00B3CB00D56D0C32FC00E2C000019000C011008591DDDF29D3299600D60002E00C002F83DD9CE200CCB4004208E0034C09F09AEE00C6E0240F0DCE753D813FE26B2530DA400042680013E90E11B9EDF389EDF1A0E00332C0029AECEF3D2D82D2E22519D09D5100801200326B00E19E003350E0050CEE33E9001EB60029BFCDC2E7405EC3CE4C052E457A00AA4F0AC40B003C0200066FEC993DC688100E45A2EE45C8E298B9D0957'
    $Logo4_GIF &= 'F0E5AAA00A4F0A02A4000281A00AEA7C3E73AEBE12FEE698D2D4723EE7EB32447320EE2B802EE88C5E108A7DD88C5D748ADDE8945EE9967EE9989EE99ABEE99C1E10003B'
    Return Binary($Logo4_GIF)
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func Merlin_GIF()
    Local _
    $Merlin_GIF = '0x47494638396144004700F70000FFFFFF1831711C357D182D6D1C3982182D691C35791C3986CACACA1831751C3D9614246118316D14286914357D1835791C398A183575204192142D65C2C2C2BE9296142459203D92AEAAAEC69A9AB2B2B6BAB6B6CACACEBEAA41142D7520398A395D9618358614317DA29E9E1028751C3D8A0C2455797979A27D7918316941699ECEA2A23D4955101C4955595961656100041C86828214358E182861B6A23DEBEBEBBEBEBE142D71E7B2B220419EB28E8E10246D2D3959DFA6AA10245D8E8A8EA29641696969CAB241202D49082065C6C6CA0C1C516165556979927D61616186B2183179AAAAAAC6C6C2969296DBDBDF243D718A71712031591C3582DFAEAE8E7D86A2A6A6314579866969AA828214285D20316910246592928E1031860410353D5D92F3F3F328499A14399A14203D3539497D754986868E0C2059A28282E3E3E3081024AE9A3D967171454545355992494D61AE8A8E7175797D869ED7A2A26555554D4D51B69296DBD7D7394969928A4D555D65D7A6AA8A7D39142855CAA6AA203982EBCACE5D6569AE9A359E9E9E715959183161B6C2DF5186C22D4169928A55414965BABABE615971AE9E9E0C18394559755979AAEBE3DF31498A5179A22439694159A6313128A6964D9EAABEDFBABE314982514924081849495565A696396969610C287D453535203571968286717155'
    $Merlin_GIF &= '7171694571A64D5D861C3D92D2BE41514141DBCACAEFB6BA49393D24459A315586394561082471C6B649614D55B6AA5D1C2D59BE969A3D49717D7959614949CAB2AE514139244186E3C6CAF3EFEB756935797965867D55595D4561758AFBBEC23D659A1C357161551CBAAA49413D456D798A7D8282617DA2141C35000C2820283D24418A79753DE3DFDB24395D9692695D6986283965B2B2B23559968A8279FBFBEF8692AEEFD74D516D96C6B6559A8E45353541A69E5D82615D967D79454531D2BE4D92864561869E14244D554D456D6555393D555D61613159A6B286867592B29E8A351C316DF7FBFBFFC6C665757D1C397D555D7DCECACA1C3979182D71BEC2CE4539206D611C866561FFFFFF21F904010000FF002C00000000440047000008FF00FF091C48B0A0C18308132A5CC8B0A1C38710233E74674CA2C58B08C5E4B8900F16C68F1651697C152011C8930E977DD3A6F100CA970BC5C9C92166D92431307316540149C2AB1CDE64EA1CFA2FDA87483968CE01878E684E246A7E591A9369DBBE664E5F669254E357264BD3BAE2819715243C0A3FAA90DA45CF519518562894FDA8A451851E3DA8E0C0DBA34D3D25733156A0A32990AFC281FED02115F862333AACE6593A24F550183EB71A5BAC42C7579843785A1D7A52435306249A1F12BB1567452B568134E10864184706478C5333248645C70A3E545A151BDE8A'
    $Merlin_GIF &= '0F9F0C59C645D2BD70CE381D192A00C7419DCA0AE851A200669E905B1B1D59A264FFD171A7C29D3869B0544893663BF7834AD2E878A7AE1096FB5892D4D185FCC77B8555E8E0883AAEF0B2CA81AE8812C31F59CCF15F4255E013060241ACE2CA856E7451430DBBA0F6E0418CFC5243183570D0055C4F90D855261F1AC44D586AE0F1C4346AA8F1C41378C818A3832D0E840D1E1C144101214EFC10430C4E60C0880D08E063458F0229C10436D830614A21B75041051F59D47186154C6060857B1FCE51A413419CB0CB1F155470CB1F8EB473C20F3F10D2548F679C70423B31E0C301051B6CC008051CD810449A319C01A529EDB8C00C0708441A24A44D3212840B413003252EE198B2411191861AAA9056B4C303253D9E3204343130C108A8A246FF4A81065604F185212DBA13CB258F04E1043636C03A2A234CFCA0CC1A5FE4F3E03DB598334B1F6EC44008B0C2526003064E9832C4140494100D18DCF522432DDD74534D19A074C1C4061414E1AE0DD88C10831B054860EF0507BC919A0AD1C880CA37D598730509653033EDA0D6128BE6B6537C7081BD074CD258360294708135937821483B32D8F282BA1BD8400123D8101283324B8883CB14164B700104F69C52960A0F5C60732A1008E0413E071C50C60907DBB001B62E4C708F399E784080C33643207156BD9470EF070404208F008094F0801D203342EB093CC8608A'
    $Merlin_GIF &= '397AA4B0440810A4F28A045364E3943153D82B412A5E3CD04002F6007240098604FF31ED06D83861C703105C318B10476CB1C726D5D4A3C0058038958FD46B07014A0A2CE0220001807C00010F3160808D152FC853C20121E4A20A382C60924C300AACDDF650F55CA1B602F5D4D2411FEB94620FE77B2F01C70818FCC043CF3D8B20CCEE8360E2F0BDBDE8D40C2EA9DC1B0D208B00B345289BEBBD770A273001C7143D0302880022E4314C1F1D4002814F1240103D4C9BBC7F2F014B7051C60D09189037F221488420187000F3018200F610C0120AE086580822040FB3D71440F01228340010AF78C5053E20007DF8410AFA08C0037EE73DADF9E0000448E10113688014A4C30709C89A4F2E20002D80EB24D780C11A5A6080541CC00033184201FF18C0800808200421F0DE01A7600F6EA590850C68413A182000089460028F58C31A6E884318E8900706F0C0AA0650800124E00182B84212CD470001B8F1776D34C00306E087474CE0015080C61A74C8459424E20BCEE045387CD0023F04A000050880084C910C35AED08D6E4CA1000C60802D68E11146B0052F44B10632F4112588384521508002657CA100FA2840031409095528220492A42424DD28823DB8800B8F20C328DB0087ACB4860A7480430306708D44DC2014B998C52C1E294B01E4037DA1D0830B88900E72E0E0388A220A12B290811564200EF220A6191251'
    $Merlin_GIF &= '8A0ECC2219BF73A32C45100C458002141D580711E0E0CD1554801CA81A0A12DE91FF810CD4E116A318C004A4C1860E744008C110813A2949497B2842151DA0011086D18834446105B7408153908002D69021035018400358400321084118906428431F600045449406D2684414D8B18238A0603943B1863FB2F38524E0A2003358C0223CE10903A4F4014865E812842104894A610FEC18421AFC5108A750A20E3B8506341800542D34C0032260E94A2380D40788E00542D0831ED8C0834E7CA10EE4488237B2428946D022099C40A416B45080049075AC11202B4BDBF182048C420F7048072D0AA18BB9CEC50EC0E0C43576E003BE06E0AF728C4002361BD80878C00309F040256231047570E21E8808CC30E2818C3E9881053E48A45FCBBAD900FF6CF6B6B5D5470386800C7E78642E8860413FFAF00970B821B60CB02D529790800038D7B9B7752E5787C08974FC762E9740C627CEB10534F035B99BBD022E3C10007DDCE0B9CF256201A4A08E4E5C372B60E0871DCC30081E547688B6F5401E30510912546211E7452F03C8A88572E432302A4807170A60063BA0C102654CAE7E69908B2300C11301962E570B5060673C2230C630C1041A90026A5800C22918803E46E10920B08106A5B80111931B00F572D80816480788455C8009CCC0027C2D803C4A01840EB0E1C87990F18C67ACD774580057733184052640E519F821'
    $Merlin_GIF &= 'C80CA8C41ECC70641A80A312FA604098990CD47418410B08DEEB0C66A0852B237269C0B258041BCE710433B840C9649E409BAFA002CDC0020A50D0420BA6FCE61BC0810D89D8C10EE4B1641B4FC0022A482D734E01060BC416913758443B1AA0CA05AC79060D6840507D9082147C48056F28B53C183D80141862132088B5AC63FD069941E9D6B84E484000003B'
    Return Binary($Merlin_GIF)
    EndFunc

    [/autoit]


    Gruß,
    UEZ

  • Stringlänge

    • UEZ
    • 9. August 2011 um 15:39

    Das kannst du doch!

    [autoit]


    #include <String.au3>
    ConsoleWrite(MinLen("1-Autoit.de") & @CRLF)
    ConsoleWrite(MinLen("2-Autoit.de", 20) & @CRLF)
    ConsoleWrite(MinLen("1-Autoit.de", 30, "#", False) & @CRLF)

    [/autoit][autoit][/autoit][autoit]

    Func MinLen($string, $min = 15, $char = "*", $pre = True)
    Local $len = StringLen($string)
    If $len >= $min Then Return
    If $pre Then Return _StringRepeat($char, $min - $len) & $string
    Return $string & _StringRepeat($char, $min - $len)
    EndFunc

    [/autoit]

    Gruß,
    UEZ

  • AutoIt + 3D = ?

    • UEZ
    • 9. August 2011 um 15:22

    Das Ganze ohne ASM bitte ;)

    Gruß,
    UEZ

  • Stringlänge

    • UEZ
    • 9. August 2011 um 13:46

    Schaue dir mal _StringRepeat() an.

    Beispiel:

    [autoit]


    #include <String.au3>
    ConsoleWrite(MinLen("Autoit.de") & @CRLF)

    [/autoit][autoit][/autoit][autoit]

    Func MinLen($string, $min = 15, $char = "*", $pre = True)
    Local $len = StringLen($string)
    If $len >= $min Then Return
    If $pre Then Return _StringRepeat($char, $min - $len) & $string
    Return $string & _StringRepeat($char, $min - $len)
    EndFunc

    [/autoit]

    Gruß,
    UEZ

  • lied endlos abspielen (immer wieder von neu anfangen)

    • UEZ
    • 31. Juli 2011 um 12:12
    Zitat von DeathNote

    Hallo Leute,

    wie kann man ein lied abspielen das endlos läuft, dh. sobald GUI sich startet das lied abspielen und wenn es fertig ist soll es von neu anfangen.

    Lg


    Definiere Lied mal näher: mp3, wav, xm, mod, mid, aac, ogg, etc.

    Gruß,
    UEZ

  • Bug? Benötige Workaround

    • UEZ
    • 28. Juli 2011 um 11:05

    Bin seit 2 Tagen wieder aus dem Urlaub zurück und muss mich nach 4 wöchiger Abstinenz wieder an das Coden gewöhnen.

    [autoit]


    #include <WindowsConstants.au3>
    Opt("GuiOnEventMode", 1)

    [/autoit][autoit][/autoit][autoit]

    GUICreate("Test Bug", 200, 200)
    GUISetOnEvent(-3, "_Exit")

    [/autoit][autoit][/autoit][autoit]

    Global $nInput1 = GUICtrlCreateInput("0.00", 10, 10, 80, 20, 0x800)
    Global $nInput2 = GUICtrlCreateInput("0.00", 10, 30, 80, 20)

    [/autoit][autoit][/autoit][autoit]

    AdlibRegister("_UpdateInput1", 1000)

    [/autoit][autoit][/autoit][autoit]

    GUISetState()

    [/autoit][autoit][/autoit][autoit]

    GUIRegisterMsg($WM_COMMAND, "WM_COMMAND")

    [/autoit][autoit][/autoit][autoit]

    While 1
    Sleep(20000)
    WEnd

    [/autoit][autoit][/autoit][autoit]

    Func _Exit()
    Exit
    EndFunc

    [/autoit][autoit][/autoit][autoit]

    Func _UpdateInput1()
    GUICtrlSetData($nInput1, StringFormat("%3.2f", Random()))
    EndFunc

    [/autoit][autoit][/autoit][autoit]

    Func WM_COMMAND($hWnd, $iMsg, $wParam, $lParam)
    Local $nID = BitAND($wParam, 0x0000FFFF)
    If $nID = 4 Then
    ConsoleWrite("Some input was entered" & @CRLF)
    EndIf
    If Not $lParam Then ConsoleWrite("Enter pressed" & @CRLF)
    Return "GUI_RUNDEFMSG"
    EndFunc ;==>WM_COMMAND

    [/autoit]

    Hilft dir das weiter?

    Gruß,
    UEZ

  • Beispiel für einen Bildschirmschoner

    • UEZ
    • 28. Juni 2011 um 09:39

    Hier ein Beispiel noch kurz vor dem Urlaub, wie man einen Bildschirmschoner inkl. dem Vorschaufenster (in dem Monitor) und Einstellmenü erstellen kann.

    Spoiler anzeigen
    [autoit]


    ;~ #AutoIt3Wrapper_OutFile=GDI+ 3D Star Scrolling Screensaver.scr
    #AutoIt3Wrapper_OutFile=c:\windows\system32\GDI+ 3D Star Scrolling Screensaver.scr
    #AutoIt3Wrapper_Run_Obfuscator=y
    #Obfuscator_Parameters=/sf /sv /om /cs=0 /cn=0
    #AutoIt3Wrapper_Run_After=del /f /q "%scriptdir%\%scriptfile%_Obfuscated.au3"
    #AutoIt3Wrapper_UseX64=n
    #AutoIt3Wrapper_Res_Description=Simple Screensaver made by UEZ 2011
    #AutoIt3Wrapper_Res_Fileversion=1.0.1.0
    #AutoIt3Wrapper_Res_Language=1033
    #AutoIt3Wrapper_Res_Field=Version|1.0.1
    #AutoIt3Wrapper_Res_Field=Build|2012-12-19
    #AutoIt3Wrapper_Res_Field=Coded by|UEZ
    #AutoIt3Wrapper_Res_Field=Compile date|%longdate% %time%
    #AutoIt3Wrapper_Res_Field=AutoIt Version|%AutoItVer%
    #AutoIt3Wrapper_Run_After=upx.exe --best --lzma "%out%"
    #AutoIt3Wrapper_AU3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6

    [/autoit] [autoit][/autoit] [autoit]

    #include <Array.au3>
    #include <EditConstants.au3>
    #include <GDIPlus.au3>
    #include <GUIConstantsEx.au3>
    #include <Misc.au3>
    #include <SliderConstants.au3>
    #include <Timers.au3>
    #include <WindowsConstants.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Opt("GUIOnEventMode", 1)
    Opt("MustDeclareVars", 1)

    [/autoit] [autoit][/autoit] [autoit]

    _Singleton(@AutoItExe)

    [/autoit] [autoit][/autoit] [autoit]

    Global Const $app_name = "GDI+ 3D Star Scrolling Screensaver by UEZ 2011"
    Global Const $ver = "v1.0.1 build 2012-12-19"
    Global $hGUI, $iW, $iH, $GUI_H, $GUI_W, $GUI_X, $GUI_Y, $r, $show_FPS = 0, $aPreview
    Global $maxStars = 150, $size = 1
    Global $parent_pid, $aChildProcess
    Global Const $hFullScreen = WinGetHandle("Program Manager")
    Global Const $aFullScreen = WinGetPos($hFullScreen)
    Global $main_screen_x = Abs($aFullScreen[0])
    Global Const $ini_file = @ScriptDir & "\GDI+ 3D Star Scrolling Screensaver.ini"
    If FileExists($ini_file) Then
    $show_FPS = Int(IniRead($ini_file, "Settings", "ShowFPS", 0))
    $maxStars = Int(IniRead($ini_file, "Settings", "MaxStars", 150))
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Global $cmdparam = "/s"
    If $CmdLine[0] Then $cmdparam = StringLeft($CmdLine[1], 2)

    [/autoit] [autoit][/autoit] [autoit]

    Switch $cmdparam
    Case "/s"
    $iW = @DesktopWidth
    $iH = @DesktopHeight
    $GUI_X = $aFullScreen[0]
    $GUI_Y = $aFullScreen[1]
    $GUI_W = $aFullScreen[2]
    $GUI_H = $aFullScreen[3]
    $r = (($iW + $iH) / 2) / 0x300
    $hGUI = GUICreate($app_name, $GUI_W, $GUI_H, $GUI_X, $GUI_Y, $WS_POPUP, $WS_EX_TOPMOST)
    Case "/c"
    Opt("GUIOnEventMode", 0)
    Global Const $hGUI_Settings = GUICreate("Settings", 514, 108, -1, -1, -1, BitOR($WS_EX_TOOLWINDOW, $WS_EX_WINDOWEDGE))
    Global Const $Label = GUICtrlCreateLabel("Amount of stars:", 8, 18, 100, 20)
    GUICtrlSetFont(-1, 12, 400, 0, "Times New Roman")
    Global Const $Slider = GUICtrlCreateSlider(112, 8, 342, 45, BitOR($GUI_SS_DEFAULT_SLIDER, $TBS_BOTH, $TBS_TOOLTIPS))
    GUICtrlSetLimit(-1, 500, 10)
    GUICtrlSetData(-1, $maxStars)
    GUICtrlSetTip(-1, "Set amount of stars to be displayed")
    Global Const $Checkbox = GUICtrlCreateCheckbox("Enable FPS Counter", 8, 70, 130, 17)
    GUICtrlSetFont(-1, 11, 400, 0, "Times New Roman")
    If $show_FPS Then GUICtrlSetState($Checkbox, $GUI_CHECKED)
    Global Const $Input = GUICtrlCreateInput(GUICtrlRead($Slider), 456, 16, 41, 27, BitOR($GUI_SS_DEFAULT_INPUT, $ES_CENTER, $ES_NUMBER, $ES_READONLY))
    GUICtrlSetFont(-1, 12, 400, 0, "Times New Roman")
    Global Const $Button_OK = GUICtrlCreateButton("Apply", 424, 70, 75, 25)
    GUICtrlSetFont(-1, 12, 400, 0, "Times New Roman")
    Global Const $Button_Cancel = GUICtrlCreateButton("Cancel", 336, 70, 75, 25)
    GUICtrlSetFont(-1, 12, 400, 0, "Times New Roman")
    Global Const $Label_Ver = GUICtrlCreateLabel($app_name & @CRLF & $ver, 150, 70, 170, 20)
    GUICtrlSetFont(-1, 6, 400, 0, "Times New Roman")
    GUISetState(@SW_SHOW, $hGUI_Settings)
    Global $nMsg

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE, $Button_Cancel
    GUIDelete($hGUI_Settings)
    Exit
    Case $Button_OK
    IniWrite($ini_file, "Settings", "ShowFPS", BitAND(GUICtrlRead($Checkbox), $GUI_CHECKED))
    IniWrite($ini_file, "Settings", "MaxStars", GUICtrlRead($Slider))
    GUIDelete($hGUI_Settings)
    Exit
    Case $Slider
    GUICtrlSetData($Input, GUICtrlRead($Slider))
    EndSwitch
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Case "/p"
    $aPreview = WinGetPos(HWnd($CmdLine[2]))
    $iW = $aPreview[2]
    $iH = $aPreview[3]
    $GUI_X = 0
    $GUI_Y = 0
    $GUI_W = $iW
    $GUI_H = $iH
    $main_screen_x = 0
    $r = (($iW + $iH) / 2) / 0x30
    $show_FPS = False
    $maxStars = 30
    $size = 1
    $hGUI = GUICreate("GDI+ 3D Star Scrolling Screensaver by UEZ", $GUI_W, $GUI_H, $GUI_X, $GUI_Y, $WS_POPUP)
    _WinAPI_SetParent($hGUI, $CmdLine[2])
    $parent_pid = _WinAPI_GetParentProcess(@AutoItPID)
    EndSwitch

    [/autoit] [autoit][/autoit] [autoit]

    _GDIPlus_Startup()

    [/autoit] [autoit][/autoit] [autoit]

    Global Const $iW2 = $iW / 2
    Global Const $iH2 = $iH / 2

    [/autoit] [autoit][/autoit] [autoit]

    GUISetBkColor(0x000000, $hGUI)
    GUISetState(@SW_SHOW, $hGUI)

    [/autoit] [autoit][/autoit] [autoit]

    Global Const $hBitmap = _WinAPI_CreateDIB($iW, $iH)
    Global Const $hDC = _WinAPI_GetWindowDC($hGUI)
    Global Const $hDC_backbuffer = _WinAPI_CreateCompatibleDC($hDC)
    Global Const $DC_obj = _WinAPI_SelectObject($hDC_backbuffer, $hBitmap)
    Global Const $hGraphic = _GDIPlus_GraphicsCreateFromHDC($hDC_backbuffer)
    _GDIPlus_GraphicsSetSmoothingMode($hGraphic, 2)
    Global Const $hPen = _GDIPlus_PenCreate(0, $size)
    Global Const $hBrush = _GDIPlus_BrushCreateSolid(0xE0000000)
    Global Const $hBrush_Text = _GDIPlus_BrushCreateSolid(0xFFF0F0F0)
    Global Const $hFormat = _GDIPlus_StringFormatCreate()
    Global Const $hFamily = _GDIPlus_FontFamilyCreate("Arial")
    Global Const $hFont = _GDIPlus_FontCreate($hFamily, 12)
    Global Const $tLayout = _GDIPlus_RectFCreate($iW - 32, 0, 0, 0)

    [/autoit] [autoit][/autoit] [autoit]

    Global Const $speed = 50

    [/autoit] [autoit][/autoit] [autoit]

    Global $aStars[$maxStars][3], $j
    For $j = 0 To $maxStars - 1
    NewStars($j)
    Next

    [/autoit] [autoit][/autoit] [autoit]

    Global Const $om = MouseGetCursor()
    Global $idle_o, $idle_n, $fps = 0, $newx, $newy, $c, $i
    Global $fps2 = 0

    [/autoit] [autoit][/autoit] [autoit]

    GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit")

    [/autoit] [autoit][/autoit] [autoit]

    OnAutoItExitRegister("_Exit")
    AdlibRegister("FPS", 1000)

    [/autoit] [autoit][/autoit] [autoit]

    While Sleep(10)
    Draw_Stars()
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func FPS()
    $fps = $fps2
    $fps2 = 0
    EndFunc ;==>FPS

    [/autoit] [autoit][/autoit] [autoit]

    Func Draw_Stars()
    If $cmdparam = "/s" Then
    GUISetCursor(16, 1, $hGUI)
    $idle_n = _Timer_GetIdleTime()
    If $idle_n < $idle_o Then _Exit()
    $idle_o = $idle_n
    Else
    If Not BitAND(WinGetState($hGUI), 2) Then _Exit()
    $aChildProcess = _WinAPI_EnumChildProcess($parent_pid)
    If $aChildProcess[0][0] > 1 Then _Exit()
    EndIf
    DllCall($ghGDIPDll, "int", "GdipFillRectangleI", "handle", $hGraphic, "handle", $hBrush, "int", 0, "int", 0, "int", $iW, "int", $iH)
    While $j < $maxStars
    $aStars[$j][0] += $aStars[$j][0] / $speed
    $aStars[$j][1] += $aStars[$j][1] / $speed
    $aStars[$j][2] += $r
    $newx = $aStars[$j][0] + $iW2
    $newy = $aStars[$j][1] + $iH2
    $c = Hex(Int(Min($aStars[$j][2], 0xFF)), 2)
    DllCall($ghGDIPDll, "int", "GdipSetPenColor", "handle", $hPen, "dword", "0xFF" & $c & $c & $c)
    DllCall($ghGDIPDll, "int", "GdipDrawRectangle", "handle", $hGraphic, "handle", $hPen, "float", $newx, "float", $newy, "float", 1, "float", 1)
    If $newx < 0 Or $newx > $iW Or $newy < 0 Or $newy > $iH Then NewStars($j, $iW2 * Random(0.75, 1.25), $iH2 * Random(0.75, 1.25), $iW2 * Random(0.75, 1.25), $iH2 * Random(0.75, 1.25))
    If $newx < 0 Or $newx > $iW Or $newy < 0 Or $newy > $iH Then NewStars($j, $iW2 * _Random(0.75, 1.25, 0.95, 1.05), $iH2 * _Random(0.75, 1.25, 0.95, 1.05), $iW2 * _Random(0.75, 1.25, 0.95, 1.05), $iH2 * _Random(0.75, 1.25, 0.95, 1.05))
    $j += 1
    WEnd
    $j = 0
    If $show_FPS Then DllCall($ghGDIPDll, "int", "GdipDrawString", "handle", $hGraphic, "wstr", $fps, "int", -1, "handle", $hFont, "struct*", $tLayout, "handle", $hFormat, "handle", $hBrush_Text)
    DllCall("gdi32.dll", "bool", "BitBlt", "handle", $hDC, "int", $main_screen_x, "int", 0, "int", $iW, "int", $iH, "handle", $hDC_backbuffer, "int", 0, "int", 0, "dword", $SRCCOPY)
    $fps2 += 1
    EndFunc ;==>Draw_Stars

    [/autoit] [autoit][/autoit] [autoit]

    Func NewStars($i, $sx = 0, $sy = 0, $ex = $iW, $ey = $iH)
    $aStars[$i][0] = Random($sx, $ex, 1) - $iW2
    $aStars[$i][1] = Random($sy, $ey, 1) - $iH2
    $aStars[$i][2] = 0x00
    EndFunc ;==>NewStars

    [/autoit] [autoit][/autoit] [autoit]

    Func Min($a, $b)
    If $a < $b Then Return $a
    Return $b
    EndFunc ;==>Min

    [/autoit] [autoit][/autoit] [autoit]

    Func _Random($min, $max, $emin, $emax, $int = 0) ;exludes from emin to emax
    Local $r1 = Random($min, $emin, $int)
    Local $r2 = Random($emax, $max, $int)
    If Random(0, 1, 1) Then Return $r1
    Return $r2
    EndFunc ;==>_Random

    [/autoit] [autoit][/autoit] [autoit]

    Func _Exit()
    AdlibUnRegister("FPS")
    GUISetCursor($om, 1, $hGUI)
    _GDIPlus_FontDispose($hFont)
    _GDIPlus_FontFamilyDispose($hFamily)
    _GDIPlus_StringFormatDispose($hFormat)
    _GDIPlus_PenDispose($hPen)
    _GDIPlus_BrushDispose($hBrush)
    _GDIPlus_BrushDispose($hBrush_Text)

    [/autoit] [autoit][/autoit] [autoit]

    _GDIPlus_GraphicsDispose($hGraphic)
    _WinAPI_SelectObject($hDC, $DC_obj)
    _WinAPI_DeleteObject($hBitmap)
    _WinAPI_ReleaseDC($hGUI, $hDC)

    [/autoit] [autoit][/autoit] [autoit]

    _GDIPlus_Shutdown()
    GUIDelete($hGUI)
    Exit
    EndFunc ;==>_Exit

    [/autoit] [autoit][/autoit] [autoit]

    #region WinAPIEx.au3 by Yashied
    Func _WinAPI_GetParentProcess($PID = 0)
    If Not $PID Then
    $PID = _WinAPI_GetCurrentProcessID()
    If Not $PID Then Return SetError(1, 0, 0)
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Local $hSnapshot = DllCall('kernel32.dll', 'ptr', 'CreateToolhelp32Snapshot', 'dword', 0x00000002, 'dword', 0)
    If (@error) Or (Not $hSnapshot[0]) Then Return SetError(1, 0, 0)

    [/autoit] [autoit][/autoit] [autoit]

    Local $tPROCESSENTRY32 = DllStructCreate('dword Size;dword Usage;dword ProcessID;ulong_ptr DefaultHeapID;dword ModuleID;dword Threads;dword ParentProcessID;long PriClassBase;dword Flags;wchar ExeFile[260]')
    Local $pPROCESSENTRY32 = DllStructGetPtr($tPROCESSENTRY32)
    Local $Ret, $Result = 0

    [/autoit] [autoit][/autoit] [autoit]

    $hSnapshot = $hSnapshot[0]
    DllStructSetData($tPROCESSENTRY32, 'Size', DllStructGetSize($tPROCESSENTRY32))
    $Ret = DllCall('kernel32.dll', 'int', 'Process32FirstW', 'ptr', $hSnapshot, 'ptr', $pPROCESSENTRY32)
    While (Not @error) And ($Ret[0])
    If DllStructGetData($tPROCESSENTRY32, 'ProcessID') = $PID Then
    $Result = DllStructGetData($tPROCESSENTRY32, 'ParentProcessID')
    ExitLoop
    EndIf
    $Ret = DllCall('kernel32.dll', 'int', 'Process32NextW', 'ptr', $hSnapshot, 'ptr', $pPROCESSENTRY32)
    WEnd
    _WinAPI_CloseHandle($hSnapshot)
    If Not $Result Then Return SetError(1, 0, 0)
    Return $Result
    EndFunc ;==>_WinAPI_GetParentProcess

    [/autoit] [autoit][/autoit] [autoit]

    Func _WinAPI_EnumChildProcess($PID = 0)
    If Not $PID Then
    $PID = _WinAPI_GetCurrentProcessID()
    If Not $PID Then Return SetError(1, 0, 0)
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Local $hSnapshot = DllCall('kernel32.dll', 'ptr', 'CreateToolhelp32Snapshot', 'dword', 0x00000002, 'dword', 0)
    If (@error) Or (Not $hSnapshot[0]) Then Return SetError(1, 0, 0)

    [/autoit] [autoit][/autoit] [autoit]

    Local $tPROCESSENTRY32 = DllStructCreate('dword Size;dword Usage;dword ProcessID;ulong_ptr DefaultHeapID;dword ModuleID;dword Threads;dword ParentProcessID;long PriClassBase;dword Flags;wchar ExeFile[260]')
    Local $pPROCESSENTRY32 = DllStructGetPtr($tPROCESSENTRY32)
    Local $Ret, $Result[101][2] = [[0]]

    [/autoit] [autoit][/autoit] [autoit]

    $hSnapshot = $hSnapshot[0]
    DllStructSetData($tPROCESSENTRY32, 'Size', DllStructGetSize($tPROCESSENTRY32))
    $Ret = DllCall('kernel32.dll', 'int', 'Process32FirstW', 'ptr', $hSnapshot, 'ptr', $pPROCESSENTRY32)
    While (Not @error) And ($Ret[0])
    If DllStructGetData($tPROCESSENTRY32, 'ParentProcessID') = $PID Then
    $Result[0][0] += 1
    If $Result[0][0] > UBound($Result) - 1 Then
    ReDim $Result[$Result[0][0] + 100][2]
    EndIf
    $Result[$Result[0][0]][0] = DllStructGetData($tPROCESSENTRY32, 'ProcessID')
    $Result[$Result[0][0]][1] = DllStructGetData($tPROCESSENTRY32, 'ExeFile')
    EndIf
    $Ret = DllCall('kernel32.dll', 'int', 'Process32NextW', 'ptr', $hSnapshot, 'ptr', $pPROCESSENTRY32)
    WEnd
    _WinAPI_CloseHandle($hSnapshot)
    If $Result[0][0] Then
    ReDim $Result[$Result[0][0] + 1][2]
    Else
    Return SetError(1, 0, 0)
    EndIf
    Return $Result
    EndFunc ;==>_WinAPI_EnumChildProcess

    [/autoit] [autoit][/autoit] [autoit]

    Func _WinAPI_CreateDIB($iWidth, $iHeight, $iBitsPerPel = 32)
    Local $tBIHDR, $hBitmap, $pBits
    Local Const $BI_RGB = 0, $DIB_RGB_COLORS = 0
    Local Const $tagBITMAPINFOHEADER = 'dword biSize;long biWidth;long biHeight;ushort biPlanes;ushort biBitCount;dword biCompression;dword biSizeImage;long biXPelsPerMeter;long biYPelsPerMeter;dword biClrUsed;dword biClrImportant'
    $tBIHDR = DllStructCreate($tagBITMAPINFOHEADER)
    DllStructSetData($tBIHDR, 'biSize', DllStructGetSize($tBIHDR))
    DllStructSetData($tBIHDR, 'biWidth', $iWidth)
    DllStructSetData($tBIHDR, 'biHeight', $iHeight)
    DllStructSetData($tBIHDR, 'biPlanes', 1)
    DllStructSetData($tBIHDR, 'biBitCount', $iBitsPerPel)
    DllStructSetData($tBIHDR, 'biCompression', $BI_RGB)
    $hBitmap = _WinAPI_CreateDIBSection(0, $tBIHDR, $DIB_RGB_COLORS, $pBits)
    If @error Then Return SetError(1, 0, 0)
    Return $hBitmap
    EndFunc ;==>_WinAPI_CreateDIB

    [/autoit] [autoit][/autoit] [autoit]

    Func _WinAPI_CreateDIBSection($hDC, ByRef $tBITMAPINFO, $iUsage, ByRef $pBits, $hSection = 0, $iOffset = 0)
    $pBits = 0
    Local $Ret = DllCall('gdi32.dll', 'ptr', 'CreateDIBSection', 'hwnd', $hDC, 'ptr', DllStructGetPtr($tBITMAPINFO), 'uint', $iUsage, 'ptr*', 0, 'ptr', $hSection, 'dword', $iOffset)
    If @error Or (Not $Ret[0]) Then Return SetError(1, 0, 0)
    $pBits = $Ret[4]
    Return $Ret[0]
    EndFunc ;==>_WinAPI_CreateDIBSection
    #endregion

    [/autoit]

    Kompilieren, die SCR Datei in den System32 Ordner kopieren / verschieben und den Bildschirmschoner aussuchen.

    Gruß,
    UEZ

    PS: bin wieder in 4 Wochen Online :D

    Dateien

    GDI+ 3D Star Scrolling Screensaver.au3 13,07 kB – 306 Downloads
  • ISO Creator v1.16 build 2012-09-11 beta

    • UEZ
    • 28. Juni 2011 um 09:22

    AltairKD: vielen Dank für dein Feedback! :thumbup: Ist momentan leider nur für Daten CDs/DVDs limitiert. Mal sehen, ob ich die anderen Formate (Audio CD, etc.) auch implementieren kann.

    Ich bin in ca. 6 Std. im Flieger Richtung Urlaub -> Sonne, Strand, Meer für ca. 4 Wochen. :P Ich hoffe, ihr habt hier schönes Wetter...

    Gruß,
    UEZ

  • Herzlichen Glückwunsch Schnuffel

    • UEZ
    • 28. Juni 2011 um 09:07

    Auch von mir ein herzlichen Glückwunsch zum Geburtstag! :party:

    Gruß,
    UEZ

  • Text mit Bild Ineinanderkopieren und GUI als Bild speichern

    • UEZ
    • 26. Juni 2011 um 22:37

    Probiere es mal damit:

    Spoiler anzeigen
    [autoit]


    #cs ----------------------------------------------------------------------------

    [/autoit] [autoit][/autoit] [autoit]

    AutoIt Version: 3.3.6.1
    Author: myName

    [/autoit] [autoit][/autoit] [autoit]

    Script Function:
    Template AutoIt script.

    [/autoit] [autoit][/autoit] [autoit]

    #ce ----------------------------------------------------------------------------
    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <ScreenCapture.au3>
    #include <WindowsConstants.au3>
    $Form1 = GUICreate("Form1", 503, 445, 192, 124)
    $Name = GUICtrlCreateLabel("Name", 24, 312, 32, 17)
    $Input1 = GUICtrlCreateInput("Input1", 72, 312, 121, 21)
    $Level = GUICtrlCreateLabel("Level", 312, 312, 30, 17)
    $Input2 = GUICtrlCreateInput("Input2", 352, 312, 129, 21)
    $Ok = GUICtrlCreateButton("Ok", 216, 352, 75, 25, $WS_GROUP)
    $Bild = GUICtrlCreateButton("Bild", 72, 408, 99, 25, $WS_GROUP)
    $Beenden = GUICtrlCreateButton("Beenden", 368, 408, 75, 25, $WS_GROUP)
    $Pic1 = GUICtrlCreatePic("sig.jpg", 0, 0, 500, 300, BitOR($SS_NOTIFY, $WS_GROUP, $WS_CLIPSIBLINGS))
    GUISetState(@SW_SHOW)

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Ok
    GUICtrlCreateLabel(GUICtrlRead($Input1), 256, 32, 234, 46)
    GUICtrlSetBkColor(-1, -2)
    GUICtrlCreateLabel(GUICtrlRead($Input2), 232, 184, 252, 43)
    GUICtrlSetBkColor(-1, -2)
    Case $Bild
    GUISetState(@SW_HIDE)
    $Form1_1 = GUICreate("Form1", 503, 301, 192, 124)
    $Pic1 = GUICtrlCreatePic("sig.jpg", 0, 0, 500, 300, BitOR($SS_NOTIFY, $WS_GROUP, $WS_CLIPSIBLINGS))
    $Label1 = GUICtrlCreateLabel(GUICtrlRead($Input1), 256, 32, 82, 46)
    GUICtrlSetBkColor(-1, -2)
    $eeee = GUICtrlCreateLabel(GUICtrlRead($Input2), 232, 184, 52, 43)
    GUICtrlSetBkColor(-1, -2)
    GUISetState(@SW_SHOW)
    _ScreenCapture_CaptureWnd(@ScriptDir & "\Screenshot.jpg", $Form1_1, 0, 0, -1, -1, False)
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

    [/autoit] [autoit][/autoit] [autoit]

    EndSwitch
    WEnd
    EndSwitch
    WEnd

    [/autoit]

    Gruß,
    UEZ

  • Meine Exe wird ständig decompiled

    • UEZ
    • 26. Juni 2011 um 15:03

    Einen absoluten Schutz gibt es nicht, denn alles lässt sich irgendwie reversen, aber Obsfucator + AutoIt3Camo sollten hilfreich sein, um die Decompilierer abzuschrecken.

    Der beste Schutz ist Open Source ;)

    Gruß,
    UEZ

  • _WinGetControls() - Controls eines Fensters auslesen

    • UEZ
    • 26. Juni 2011 um 14:57

    Versuche mal Control Viewer von Yashied.

    Es wäre auch nützlich, wenn wir deinen Code sehen könnten. Am besten machst du dazu einen eigenen Beitrag auf.

    Gruß,
    UEZ

  • Variablennamen ausgeben

    • UEZ
    • 26. Juni 2011 um 11:53
    [autoit]


    $test = "hallo"
    MsgBox(0,"", "Es existiert eine Variable mit dem Namen: " & $test ) ;<= hier soll der name der variable stehen, nicht der wert

    [/autoit]

    Gruß,
    UEZ

  • Weisses Quadrat beim STOP Symbol in der Messagebox entfernen

    • UEZ
    • 25. Juni 2011 um 12:35

    Hier noch eine Alternative:

    Spoiler anzeigen
    [autoit]


    #include <ButtonConstants.au3>
    #include <Constants.au3>
    #include <GUIConstantsEx.au3>
    #include <WinAPI.au3>
    #include <WindowsConstants.au3>

    [/autoit] [autoit][/autoit] [autoit]

    $Gui = GUICreate("Test", 200, 200, -1, -1, -1)
    $hBmp = _WinAPI_CreateBitmapFromIcon(@SystemDir & "\ieframe.dll", 61, 32, 32)
    $button = GUICtrlCreateButton(" " & " STOP", 50, 130, 140, 50,$WS_CLIPSIBLINGS)
    GUICtrlSetFont(-1, 12, 400)
    GUISetState(@SW_SHOW, $Gui)
    _WinAPI_DeleteObject(GUICtrlSendMsg($button, $BM_SETIMAGE, $IMAGE_BITMAP, $hBmp))
    _WinAPI_DeleteObject($hBmp)

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $msg = GUIGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE
    Exit
    Case $msg = $button
    EndSelect
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _WinAPI_CreateBitmapFromIcon($file, $iIndex = 0, $iW = 16, $iH = 16)
    If FileExists($file) Then
    Local $aRet, $hIcon, $hBitmap
    Local $hDC, $hBackDC, $hBackObj

    [/autoit] [autoit][/autoit] [autoit]

    $aRet = DllCall("shell32", "long", "ExtractAssociatedIcon", "int", 0, "str", $file, "word*", $iIndex)
    If @error Then Return SetError(@error, @extended, 0)
    $hIcon = $aRet[0]

    [/autoit] [autoit][/autoit] [autoit]

    $hDC = _WinAPI_GetDC(0)
    $hBackDC = _WinAPI_CreateCompatibleDC($hDC)
    $hBitmap = _WinAPI_CreateSolidBitmap(0, _WinAPI_GetSysColor($COLOR_MENU), $iW, $iH)
    $hBackObj = _WinAPI_SelectObject($hBackDC, $hBitmap)
    _WinAPI_DrawIconEx($hBackDC, 0, 0, $hIcon, $iW, $iH, 0, 0, 3)
    _WinAPI_DestroyIcon($hIcon)

    [/autoit] [autoit][/autoit] [autoit]

    _WinAPI_SelectObject($hBackDC, $hBackObj)
    _WinAPI_ReleaseDC(0, $hDC)
    _WinAPI_DeleteDC($hBackDC)
    Return $hBitmap
    Else
    Return SetError(1, 0, 0)
    EndIf
    EndFunc ;==>_WinAPI_CreateBitmapFromIcon

    [/autoit]

    Getestet auf Win7 x64 + Aero.

    Gruß,
    UEZ

  • Anführunsgzeichen in eine Variable

    • UEZ
    • 24. Juni 2011 um 14:01
    [autoit]


    $string = '"Ein String mit Anführungszeichen"'

    [/autoit]

    Gruß,
    UEZ

  • ISO Creator v1.16 build 2012-09-11 beta

    • UEZ
    • 22. Juni 2011 um 01:12

    Aktualisiert.

    Gruß,
    UEZ

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™