Leaderboard
Popular Content
Showing content with the highest reputation on 08/05/2013 in all areas
-
File Name: AutoIt v3.3.9.15 Beta File Submitter: Jon File Submitted: 04 Aug 2013 File Category: Beta 3.3.9.15 (4th August, 2013) (Beta) AutoIt: - Added: DriveGetType() updated so that it can detect SSD, and also bus types (SATA, USB, etc.). UDFs: - Added: Graphic SmoothingMode constants (GDIPlusConstants). - Added: _GDIPlus_CustomLineCapCreate, _GDIPlus_BitmapCreateFromScan0 functions. - Changed: _GDIPlus_GraphicsGetSmoothingMode, _GDIPlus_GraphicsSetSmoothingMode functions. Click here to download this file3 points
-
mesale0077 asked me whether I could code some CSS loading animations from different web sites. These are the results using GDI+ (AutoIt v3.3.12.0+ required!): _GDIPlus_MonochromaticBlinker.au3 / _GDIPlus_RotatingBokeh.au3 _GDIPlus_SpinningCandy.au3 / _GDIPlus_SteamPunkLoading.au3 _GDIPlus_IncreasingBalls.au3 / _GDIPlus_PacmanProgressbar.au3 _GDIPlus_StripProgressbar.au3 / _GDIPlus_RingProgressbar.au3 _GDIPlus_LineProgressbar.au3 / _GDIPlus_SimpleLoadingAnim.au3 _GDIPlus_TextFillingWithWater.au3 / _GDIPlus_MultiColorLoader.au3 _GDIPlus_LoadingSpinner.au3 / _GDIPlus_SpinningAndPulsing.au3 _GDIPlus_TogglingSphere.au3 / _GDIPlus_CloudySpiral.au3 _GDIPlus_GlowingText.au3 (thanks to Eukalyptus) / _GDIPlus_HypnoticLoader.au3 _GDIPlus_RotatingRectangles.au3 / _GDIPlus_TRONSpinner.au3 _GDIPlus_RotatingBars.au3 / _GDIPlus_AnotherText.au3 (thanks to Eukalyptus) _GDIPlus_CogWheels.au3 (thanks to Eukalyptus) / _GDIPlus_DrawingText.au3 (thanks to Eukalyptus) _GDIPlus_GearsAnim.au3 / _GDIPlus_LEDAnim.au3 _GDIPlus_LoadingTextAnim.au3 / _GDIPlus_MovingRectangles.au3 _GDIPlus_SpinningAndGlowing.au3 (thanks to Eukalyptus) / _GDIPlus_YetAnotherLoadingAnim.au3 _GDIPlus_AnimatedTypeLoader.au3 / _GDIPlus_Carousel.au3 Each animation function has a built-in example how it can be used. AiO download: GDI+ Animated Wait Loading Screens.7z (previous downloads: 1757) Big thanks to Eukalyptus for providing several examples. Maybe useful for some of you Br, UEZ PS: I don't understand CSS - everything is made out of my mind, so it might be different from original CSS examples1 point
-
I was looking for some examples of custom drawn TreeViews. I didn't find any so here is two. I have made the examples for ListViews too. The first example shows some named colors from the MS HTML documentation. The colors are sorted in different ways in five text files in the zipfile. The forecolor, backcolor, color name and RGB value is shown in the GUI's. Remark that the forecolor in the first column in the ListView is bold. Click on the colors in the TreeView to see some of the effects of custom drawing. The second example enumerates the fonts for the character sets in FontConstants.au3 and shows the fonts in the GUI's. Click on the fonts in the TreeView to see the name of the fonts. The zipfile contains 5 text files with color definitions and 4 au3-files with GUI's. CustDrawTvLv.zip 2016-03-22: For colors and fonts in listviews take a look at Colors and fonts in custom drawn ListViews - UDF version.1 point
-
S3d.au3 This UDF enables you to draw simple 3D graphics. Features: Simple and easy to useDoesn't require external libraries. You don't need OpenGL or DirectX. Available Functions: _S3d_SelectGraphic($hGraphic, $iWidth, $iHeight, $iSmooth = 2) _S3d_SelectPen($hPen) _S3d_SelectBrush($hBrush) _S3d_SelectFont($hFont) _S3d_SelectFormat($hFormat) _S3d_SetClipCount($iCount) _S3d_Dist($nPos1X = 0, $nPos1Y = 0, $nPos1Z = 0, $nPos2X = 0, $nPos2Y = 0, $nPos2Z = 0) _S3d_DistFromCamera($nPosX = 0, $nPosY = 0, $nPosZ = 0) _S3d_SetCamera($nCameraX, $nCameraY, $nCameraZ, $nTargetX, $nTargetY, $nTargetZ, $nVAngle = 0, $nFAngle = 0.8, $nFScale = 1000) _S3d_SetCameraEx($nCameraX, $nCameraY, $nCameraZ, $nXYAngle = 0, $nXZAngle = 0, $nVAngle = 0, $nFAngle = 0.8, $nFScale = 1000) _S3d_SetLocalMatrix($n00 = 1, $n01 = 0, $n02 = 0, $n03 = 0, $n10 = 0, $n11 = 1, $n12 = 0, $n13 = 0, $n20 = 0, $n21 = 0, $n22 = 1, $n23 = 0, $n30 = 0, $n31 = 0, $n32 = 0, $n33 = 1) _S3d_MultiplyLocalMatrix($n00 = 1, $n01 = 0, $n02 = 0, $n03 = 0, $n10 = 0, $n11 = 1, $n12 = 0, $n13 = 0, $n20 = 0, $n21 = 0, $n22 = 1, $n23 = 0, $n30 = 0, $n31 = 0, $n32 = 0, $n33 = 1, $fRefresh = True) _S3d_LocalTranslate($nX, $nY, $nZ, $fRefresh = True) _S3d_LocalScale($nX, $nY, $nZ, $fRefresh = True) _S3d_LocalRotateX($nAngle, $fDeg = False, $fRefresh = True) _S3d_LocalRotateY($nAngle, $fDeg = False, $fRefresh = True) _S3d_LocalRotateZ($nAngle, $fDeg = False, $fRefresh = True) _S3d_GetLocalMatrix() _S3d_SetLocalMatrixEx(ByRef $aMatrix) _S3d_GetPos($nX, $nY, $nZ) _S3d_InitCurrentPos() _S3d_MoveTo($nX, $nY, $nZ = Default) _S3d_Clear($nColor = 0xFF000000) _S3d_Line($nX1, $nY1, $nZ1, $nX2, $nY2, $nZ2) _S3d_LineTo($nX, $nY, $nZ) _S3d_Box($nX1, $nY1, $nZ1, $nX2, $nY2, $nZ2) _S3d_Arrow($nX1, $nY1, $nZ1, $nX2, $nY2, $nZ2, $nLen = 30, $nAngle = 0.6) _S3d_Circle($nX, $nY, $nZ, $nRad, $fFill = False) _S3d_Polygon($aPoints, $fFill = False) _S3d_RegPolygon($nX, $nY, $nZ, $nRad, $iNum, $fFill = True) _S3d_Star($nX, $nY, $nZ, $nRad1, $nRad2, $iNum, $fFill = True) _S3d_Square($nX1, $nY1, $nZ1, $nX2, $nY2, $nZ2, $nX3, $nY3, $nZ3, $nX4, $nY4, $nZ4, $fFill = True) _S3d_MoveTo2($nXL, $nYL, $nZL, $nXR, $nYR, $nZR) _S3d_RibbonTo($nXL, $nYL, $nZL, $nXR, $nYR, $nZR) _S3d_String($sString, $nX, $nY, $nZ) New version!S3d.zip v1.3.1 (09/JUN/2014) * Archives S3d.zip v1.3.0 (05/SEP/2013) S3d.zip v1.2.3 (16/AUG/2013) Enjoy!1 point
-
...... I would recommend this small reading.....1 point
-
1 point
-
I'm not against including it, I know it's a smart design decision, but I do have to be impartial and see "both sides of the coin" on this one.1 point
-
it's not really difficult, once you understand the tutorial, it's quite clear. but it's basic and important to know.1 point
-
0. http://www.autoitscript.com/autoit3/docs/ 1. http://www.autoitscript.com/autoit3/docs/guiref/GUIRef.htm 2. http://www.autoitscript.com/autoit3/docs/guiref/GUIRef_MessageLoopMode.htm 3. http://www.autoitscript.com/autoit3/docs/guiref/GUIRef_OnEventMode.htm . you have to decide to either use on-event-mode or not.1 point
-
GUI beginner attempt, cash register
Edano reacted to CroatianPig for a topic
Edano, I've been trying to understand something about this script you made and I learned much from it: GUICreate ("Articles", 975, 635, 500, 100) ;==> draws GUI GUISetFont (20, 400, "", "Comic Sans MS") Global $ware[18] For $j=0 To 2 For $i=0 To 5 $ware[$j*6+$i]=GUICtrlCreateButton ("Product "&$i+1+$j*6, 5+255*$j, 5+105*$i, 250, 100) Next Next $Finish = GUICtrlCreateButton ("Finish", 770, 5, 200, 625) GUISetState() ;==> shows GUI While 1 $msg = GUIGetMsg() ;==> proves GUI For $i=0 To 17 If $msg=$ware[$i] Then _EvaluateQuantity($i) Next If $msg = $Finish Or $msg=-3 Then Exit WEnd ;\\\\\\\\\\\\\\\\\\\\\\\\\\\\ FUNCTIONS \\\\\\\\\\\\\\\\\\\\\\\\\\\\\ Func _EvaluateQuantity($button) Local $product=GUICtrlRead($ware[$button]) Local $quantity = InputBox ("", "Quantity of "&$product&":", "", "", 500, 250, 500, 200, "", "") Local $ans = MsgBox (4,"","You chose an article: " & $product & ", and quantity: " & $quantity) EndFunc Does that script actually "remember" which products I choose and what the quantity is? Because I've been trying to set a task about this line: If $msg = $Finish Or $msg=-3 Then Exit and I tried to add: & Run ("Notepad.exe"), but nothing works. I even put the next line: Run ("Notepad.exe") and something non-good happened... It opened I think several hundred notepad new docs, PC went slow, and had to restart... How should I add it so it opens notepad (faster than MS Word for testing), and make it print all the products and quantities, each in one line, lets say? I am familiar with basic commands like "Send" ({"ENTER 5"}) or so, "Winwaitactive", "Run", etc... If possible, don't write the script, and just give me a hint of what commands you would use so I try to figure it out a bit. And if you will update the script and write, please put intentionaly some mistakes, so I can think about it and how to fix it, because you always help generously.1 point -
Script ran through SCCM 2012 doesn't finish
Tripredacus reacted to JLogan3o13 for a topic
...As stated in post #31 point -
Alright. No offense, but it seemed stupid to use SPACE DOWN without testing SPACE before so I didn't notice the DOWN.1 point
-
Windows Timestamps are actually calculated via the number of 100-nanosecond intervals since January 1st, 1601. See this for an interesting explanation as to why the death of Tycho Brahe and the birth of Louis XIII associates our modern toys with the 17th century on a daily basis. Maybe those steampunk lads are on to something,,,1 point
-
nata2792, Do not use "{SPACE DOWN}" - that keeps the SPACE key pressed. Just use "{SPACE}" like this: HotKeySet("{ESC}", "On_Exit") HotKeySet("{SPACE}", "_Space") While 1 Sleep(10) WEnd Func _Space() MsgBox(0, "", "HotKey Pressed") EndFunc Func On_Exit() Exit EndFunc M231 point
-
nata2792, Read the file into a single variable with FileRead, or an array with _FileReadToArray, and then use StringReplace. If you want more detailed help, the please provide a bit more detail on what exactly you are trying to do. M231 point
-
I have a much smaller solution, which works well. I incorporated it in my project and had the data entry people test it all day. I added extra features e.g. blocking invalid dates and having TODAY and YESTERDAY as the date pick. I will post the whole thing tomorrow. Thank you Edano. I have saved your code snippet so I can use it when I need a border-less overlay. Here is the test code. #include <GUIConstantsEx.au3> #include <DateTimeConstants.au3> #include <WindowsConstants.au3> #include <Date.au3> #include <GuiDateTimePicker.au3> Local $sDate $hGUI = GUICreate( "Test", 220, 160 ) $date = GUICtrlCreateDate( "", 10, 20, 200, 20 ) $hDate = ControlGetHandle( "Test", "", $date ) $hLabel1 = GUICtrlCreateLabel( "", 10, 50, 100, 20 ) $hButton = GUICtrlCreateButton( "Display", 70, 95, 80, 30 ) GUISetState() _GUICtrlDTP_SetFormat( $hDate, "dddd':' MMMM d, yyyy" ) _GUICtrlDTP_SetFormat( $hDate, "'" & ControlGetText( $hDate, "", "" ) & "'" ) While 1 Switch GUIGetMsg() Case $GUI_EVENT_CLOSE Exit Case $hButton $aDate = _GUICtrlDTP_GetSystemTime( $hDate ) $sDate = $aDate[ 2 ] & '/' & $aDate[ 1 ] & '/' & $aDate[ 0 ] GUICtrlSetData( $hlabel1, $sDate ) Case $date _GUICtrlDTP_SetFormat( $hDate, "dddd':' MMMM d, yyyy" ) _GUICtrlDTP_SetFormat( $hDate, "'" & ControlGetText( $hDate, "", "" ) & "'" ) EndSwitch WEnd1 point
-
GDI+ animated loading screens build 2014-06-20 (32 examples)
mesale0077 reacted to UEZ for a topic
Try something like this here: ;coded by UEZ build 2013-05-02, idea from http://tympanus.net/codrops/2012/11/14/creative-css-loading-animations/ #include <WindowsConstants.au3> #include <GUIConstantsEx.au3> #include <Memory.au3> #include <GDIPlus.au3> Global Const $hDwmApiDll = DllOpen("dwmapi.dll") Global $sChkAero = DllStructCreate("int;") DllCall($hDwmApiDll, "int", "DwmIsCompositionEnabled", "ptr", DllStructGetPtr($sChkAero)) Global $bAero = DllStructGetData($sChkAero, 1) Global $fStep = 0.02 If Not $bAero Then $fStep = 1.25 MsgBox (0, "Installation", "MyApp will be installed...") _GDIPlus_Startup() Global Const $STM_SETIMAGE = 0x0172, $IMAGE_BITMAP = 0 Global $iW = 400, $iH = 250 Global Const $hGUI = GUICreate("Steam Punk Loading", $iW, $iH, -1, -1, $WS_POPUPWINDOW, $WS_EX_TOPMOST) GUISetBkColor(0xD2CEC6) Global Const $hPic = GUICtrlCreatePic("", 0, 0, $iW, $iH) GUICtrlSetState(-1, $GUI_DISABLE) WinSetTrans($hGUI, "", 0) GUISetState() Global $hHBmp_BG, $hB GUIRegisterMsg(0x0113, "PlayAnim") ;$WM_TIMER = 0x0113 DllCall("user32.dll", "int", "SetTimer", "hwnd", $hGUI, "int", 0, "int", 50, "int", 0) Global $z For $z = 1 To 255 Step $fStep WinSetTrans($hGUI, "", $z) Next RunWait("calc.exe", @SystemDir) GUIRegisterMsg(0x0113, "") _WinAPI_DeleteObject($hHBmp_BG) _GDIPlus_Shutdown() GUIDelete() MsgBox (0, "Installation", "Install OK") Exit Func PlayAnim() $hHBmp_BG = _GDIPlus_SteamPunkLoading($iW, $iH) $hB = GUICtrlSendMsg($hPic, $STM_SETIMAGE, $IMAGE_BITMAP, $hHBmp_BG) If $hB Then _WinAPI_DeleteObject($hB) _WinAPI_DeleteObject($hHBmp_BG) EndFunc Func _GDIPlus_SteamPunkLoading($iW, $iH, $sString = "Please wait...", $bHBitmap = True) Local Const $hPenArc = _GDIPlus_PenCreate(0xA08ABDC3, 25) DllCall($ghGDIPDll, "uint", "GdipSetPenLineJoin", "handle", $hPenArc, "int", 2) Local $hBitmap = DllCall($ghGDIPDll, "uint", "GdipCreateBitmapFromScan0", "int", $iW, "int", $iH, "int", 0, "int", $GDIP_PXF32ARGB, "ptr", 0, "int*", 0) $hBitmap = $hBitmap[6] Local Const $hCtxt = _GDIPlus_ImageGetGraphicsContext($hBitmap) _GDIPlus_GraphicsSetSmoothingMode($hCtxt, 2) Local Const $hBmp_BG = _GDIPlus_BMPFromMemory(_Background()) Local $hBrushTexture = DllCall($ghGDIPDll, "uint", "GdipCreateTexture", "handle", $hBmp_BG, "int", 0, "int*", 3) $hBrushTexture = $hBrushTexture[3] _GDIPlus_BitmapDispose($hBmp_BG) _GDIPlus_GraphicsFillRect($hCtxt, 0, 0, $iW, $iH, $hBrushTexture) Local $fCosX, $fSinY, $i Local Const $fDeg = ACos(-1) / 180, $iW2 = $iW / 2, $iH2 = $iH / 2, $iDiameter = 200, $iRadius = $iDiameter / 2, $iSize = 25, $iSize2 = $iSize / 2, $fFontSize = 20 Local Static $iAngle = 0, $iX = 0, $iDir = 1 _GDIPlus_PenSetColor($hPenArc, 0x60F0F0F0) DllCall($ghGDIPDll, "float", "GdipDrawArc", "handle", $hCtxt, "handle", $hPenArc, "float", $iW2 - $iRadius, "float", $iH2 - $iRadius, "float", $iDiameter, "float", $iDiameter, "float", 0, "float", 360) _GDIPlus_PenSetColor($hPenArc, 0xA08ABDC3) For $i = 0 To 7 If Not Mod($i, 2) Then DllCall($ghGDIPDll, "float", "GdipDrawArc", "handle", $hCtxt, "handle", $hPenArc, "float", $iW2 - ($iRadius - $iSize), "float", $iH2 - ($iRadius - $iSize), "float", $iDiameter - 2 * $iSize, "float", $iDiameter - 2 * $iSize, "float", $iAngle + $i * 45, "float", 45) EndIf Next _GDIPlus_PenSetColor($hPenArc, 0x20F0F0F0) DllCall($ghGDIPDll, "float", "GdipDrawArc", "handle", $hCtxt, "handle", $hPenArc, "float", $iW2 - ($iRadius - $iSize), "float", $iH2 - ($iRadius - $iSize), "float", $iDiameter - 2 * $iSize, "float", $iDiameter - 2 * $iSize, "float", 0, "float", 360) _GDIPlus_PenSetColor($hPenArc, 0x508ABDC3) For $i = 0 To 5 If Not Mod($i, 2) Then DllCall($ghGDIPDll, "float", "GdipDrawArc", "handle", $hCtxt, "handle", $hPenArc, "float", $iW2 - ($iRadius - 2 * $iSize), "float", $iH2 - ($iRadius - 2 * $iSize), "float", $iDiameter - 4 * $iSize, "float", $iDiameter - 4 * $iSize, "float", $iAngle + $i * 60, "float", 60) EndIf Next _GDIPlus_PenSetColor($hPenArc, 0x30F0F0F0) DllCall($ghGDIPDll, "float", "GdipDrawArc", "handle", $hCtxt, "handle", $hPenArc, "float", $iW2 - ($iRadius - 2 * $iSize), "float", $iH2 - ($iRadius - 2 * $iSize), "float", $iDiameter - 4 * $iSize, "float", $iDiameter - 4 * $iSize, "float", 0, "float", 360) _GDIPlus_PenSetColor($hPenArc, 0x808ABDC3) For $i = 0 To 3 If Not Mod($i, 2) Then DllCall($ghGDIPDll, "float", "GdipDrawArc", "handle", $hCtxt, "handle", $hPenArc, "float", $iW2 - ($iRadius - 3 * $iSize), "float", $iH2 - ($iRadius - 3 * $iSize), "float", $iDiameter - 6 * $iSize, "float", $iDiameter - 6 * $iSize, "float", $iAngle + $i * 90, "float", 90) EndIf Next _GDIPlus_PenSetColor($hPenArc, 0x20F0F0F0) DllCall($ghGDIPDll, "float", "GdipDrawArc", "handle", $hCtxt, "handle", $hPenArc, "float", $iW2 - ($iRadius - 3 * $iSize), "float", $iH2 - ($iRadius - 3 * $iSize), "float", $iDiameter - 6 * $iSize, "float", $iDiameter - 6 * $iSize, "float", 0, "float", 360) Local $hBrushCircle = _GDIPlus_BrushCreateSolid(0x60F0F0F0) _GDIPlus_GraphicsFillEllipse($hCtxt, $iW2 - $iSize2, $iH2 - $iSize2, $iSize, $iSize, $hBrushCircle) $iAngle += 4 Local Const $hFormat = _GDIPlus_StringFormatCreate() Local Const $hFamily = _GDIPlus_FontFamilyCreate("Impact") Local Const $hFont = _GDIPlus_FontCreate($hFamily, $fFontSize) Local Const $tLayout = _GDIPlus_RectFCreate(0, 0, 0, 0) Local Const $aInfo = _GDIPlus_GraphicsMeasureString($hCtxt, $sString, $hFont, $tLayout, $hFormat) Local Const $hBrushTxt = _GDIPlus_LineBrushCreate($iX, 0, DllStructGetData($aInfo[0], "Width"), 0, 0x90101010, 0xFFA0A0A0, 2) DllCall($ghGDIPDll, "uint", "GdipSetLineLinearBlend", "handle", $hBrushTxt, "float", $iX, "float", 1) DllStructSetData($tLayout, "X", ($iW - DllStructGetData($aInfo[0], "Width")) / 2) DllStructSetData($tLayout, "Y", ($iH - DllStructGetData($aInfo[0], "Height")) / 2) DllCall($ghGDIPDll, "uint", "GdipSetLineGammaCorrection", "handle", $hBrushTxt, "int", 1) _GDIPlus_GraphicsDrawStringEx($hCtxt, $sString, $hFont, $tLayout, $hFormat, $hBrushTxt) $iX += 0.02 * $iDir If $iX > 0.98 Or $iX < 0.02 Then $iDir *= -1 _GDIPlus_FontDispose($hFont) _GDIPlus_FontFamilyDispose($hFamily) _GDIPlus_StringFormatDispose($hFormat) _GDIPlus_BrushDispose($hBrushTxt) _GDIPlus_BrushDispose($hBrushTexture) _GDIPlus_BrushDispose($hBrushCircle) _GDIPlus_GraphicsDispose($hCtxt) _GDIPlus_PenDispose($hPenArc) If $bHBitmap Then Local $hHBITMAP = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hBitmap) _GDIPlus_BitmapDispose($hBitmap) Return $hHBITMAP EndIf Return $hBitmap EndFunc Func _GDIPlus_LineBrushCreate($nX1, $nY1, $nX2, $nY2, $iARGBClr1, $iARGBClr2, $iWrapMode = 0) Local $tPointF1, $pPointF1 Local $tPointF2, $pPointF2 Local $aResult $tPointF1 = DllStructCreate("float;float") $pPointF1 = DllStructGetPtr($tPointF1) $tPointF2 = DllStructCreate("float;float") $pPointF2 = DllStructGetPtr($tPointF2) DllStructSetData($tPointF1, 1, $nX1) DllStructSetData($tPointF1, 2, $nY1) DllStructSetData($tPointF2, 1, $nX2) DllStructSetData($tPointF2, 2, $nY2) $aResult = DllCall($ghGDIPDll, "uint", "GdipCreateLineBrush", "ptr", $pPointF1, "ptr", $pPointF2, "uint", $iARGBClr1, "uint", $iARGBClr2, "int", $iWrapMode, "int*", 0) If @error Then Return SetError(@error, @extended, 0) Return $aResult[6] EndFunc ;==>_GDIPlus_LineBrushCreate ;================================================================================================================================== ; Function Name: _GDIPlus_BMPFromMemory ; 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 ; Don't forget _GDIPlus_Startup() and _GDIPlus_Shutdown() ; ; Requirement(s): GDIPlus.au3, Memory.au3 and _WinAPI_BitmapCreateDIBFromBitmap() from WinAPIEx.au3 ; Return Value(s): Success: handle to bitmap (GDI+ bitmap format) or hbitmap (WinAPI bitmap format), ; Error: 0 ; Error codes: 1: $bImage is not a binary string ; 2: unable to create stream on HGlobal ; 3: unable to create bitmap from stream ; ; Author(s): UEZ ; Additional Code: thanks to progandy for the MemGlobalAlloc and tVARIANT lines and ; Yashied for _WinAPI_BitmapCreateDIBFromBitmap() from WinAPIEx.au3 ; Version: v0.98 Build 2012-08-29 Beta ;=================================================================================================================================== Func _GDIPlus_BMPFromMemory($bImage, $hHBITMAP = False) If Not IsBinary($bImage) Then Return SetError(1, 0, 0) Local $aResult 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 $aResult = DllCall("ole32.dll", "int", "CreateStreamOnHGlobal", "handle", $pData, "int", True, "ptr*", 0) ;Creates a stream object that uses an HGLOBAL memory handle to store the stream contents If @error Then Return SetError(2, 0, 0) Local Const $hStream = $aResult[3] $aResult = DllCall($ghGDIPDll, "uint", "GdipCreateBitmapFromStream", "ptr", $hStream, "int*", 0) ;Creates a Bitmap object based on an IStream COM interface If @error Then Return SetError(3, 0, 0) Local Const $hBitmap = $aResult[2] Local $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 $tVARIANT = 0 If $hHBITMAP Then Local Const $hHBmp = _WinAPI_BitmapCreateDIBFromBitmap($hBitmap) _GDIPlus_BitmapDispose($hBitmap) Return $hHBmp EndIf Return $hBitmap EndFunc ;==>_GDIPlus_BMPFromMemory Func _WinAPI_BitmapCreateDIBFromBitmap($hBitmap) ;create 32-bit bitmap v5 (alpha channel supported) Local $tBIHDR, $aRet, $tData, $pBits, $hResult = 0 $aRet = DllCall($ghGDIPDll, 'uint', 'GdipGetImageDimension', 'ptr', $hBitmap, 'float*', 0, 'float*', 0) If (@error) Or ($aRet[0]) Then Return 0 $tData = _GDIPlus_BitmapLockBits($hBitmap, 0, 0, $aRet[2], $aRet[3], $GDIP_ILMREAD, $GDIP_PXF32ARGB) $pBits = DllStructGetData($tData, 'Scan0') If Not $pBits Then Return 0 $tBIHDR = DllStructCreate( 'dword bV5Size;long bV5Width;long bV5Height;word bV5Planes;word bV5BitCount;dword bV5Compression;' & _ ;http://msdn.microsoft.com/en-us/library/windows/desktop/dd183381(v=vs.85).aspx 'dword bV5SizeImage;long bV5XPelsPerMeter;long bV5YPelsPerMeter;dword bV5ClrUsed;dword bV5ClrImportant;' & _ 'dword bV5RedMask;dword bV5GreenMask;dword bV5BlueMask;dword bV5AlphaMask;dword bV5CSType;' & _ 'int bV5Endpoints[3];dword bV5GammaRed;dword bV5GammaGreen;dword bV5GammaBlue;dword bV5Intent;' & _ 'dword bV5ProfileData;dword bV5ProfileSize;dword bV5Reserved') DllStructSetData($tBIHDR, 'bV5Size', DllStructGetSize($tBIHDR)) DllStructSetData($tBIHDR, 'bV5Width', $aRet[2]) DllStructSetData($tBIHDR, 'bV5Height', $aRet[3]) DllStructSetData($tBIHDR, 'bV5Planes', 1) DllStructSetData($tBIHDR, 'bV5BitCount', 32) DllStructSetData($tBIHDR, 'bV5Compression', 0) ; $BI_BITFIELDS = 3, $BI_RGB = 0, $BI_RLE8 = 1, $BI_RLE4 = 2, $RGBA = 0x41424752 DllStructSetData($tBIHDR, 'bV5SizeImage', $aRet[3] * DllStructGetData($tData, 'Stride')) DllStructSetData($tBIHDR, 'bV5AlphaMask', 0xFF000000) DllStructSetData($tBIHDR, 'bV5RedMask', 0x00FF0000) DllStructSetData($tBIHDR, 'bV5GreenMask', 0x0000FF00) DllStructSetData($tBIHDR, 'bV5BlueMask', 0x000000FF) DllStructSetData($tBIHDR, 'bV5CSType', 2) ; LCS_WINDOWS_COLOR_SPACE = 2 DllStructSetData($tBIHDR, 'bV5Intent', 4) ; $LCS_GM_IMA $hResult = DllCall('gdi32.dll', 'ptr', 'CreateDIBSection', 'hwnd', 0, 'ptr', DllStructGetPtr($tBIHDR), 'uint', 0, 'ptr*', 0, 'ptr', 0, 'dword', 0) If (Not @error) And ($hResult[0]) Then DllCall('gdi32.dll', 'dword', 'SetBitmapBits', 'ptr', $hResult[0], 'dword', $aRet[2] * $aRet[3] * 4, 'ptr', DllStructGetData($tData, 'Scan0')) $hResult = $hResult[0] Else $hResult = 0 EndIf _GDIPlus_BitmapUnlockBits($hBitmap, $tData) $tData = 0 $tBIHDR = 0 Return $hResult EndFunc ;==>_WinAPI_BitmapCreateDIBFromBitmap ;Code below was generated by: 'File to Base64 String' Code Generator v1.12 Build 2013-03-27 Func _Background($bSaveBinary = False, $sSavePath = @ScriptDir) Local $Background $Background &= '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' $Background &= 'LOFCvoQczPJitnNhK6LyTXI9KjVA1dtXWqnrFOSdR05mZE3yI2Ukuuj9N/2PwA0mbXTJCbJMAW64+752oCjN8S38V6F+KX0KB2/UvGerk6TC+J86gww9lqeynRnz76ZymsQWkPdR+B0F/8xeLjgh6ayUf9JpbxbfqDDUwpZ/1OT26fRIyi0f8H3Q4LzBFGX6BDoxVM78d+cAxHYzi2B2qMhJgo+q0llrIvmU/BlJiNwrAyX0IH6Wm00eKfWpjaa8TbIGyAa3gBRO0CN9XtQBMhnnhIlX6jlgGQ9XLlw5RdOeMZ+QJVnO5xL8BCAvlXa2cOVwUHaO9DDrDYHdgFZe+Vvj/BVX23yt2759JLfouOXvscO5npH0qRCp3tKaySMj/ynGv+FBJzwVq0j9OPhonMSowPcAWtlwZx6TQw+sUkhQYsGe2XxktUVkVDKobOZU9zH1BAjDf2SrBx9YxNtUr1+oUWLv/wqBL9s/CWf9p0FKcEiPG0RXYbgLipCqkhCrykEjA2L/InZQipV73xP+7RFHH2EHQqdRZAPgrbTodI+sLgQbY77HESDf7S4Xsv6Ag9/c+Du/nGKVTs7TVjl90tkazPB2w8xXtiDK8aDJxmy4chwo+BCaL5/wWPJOK3RCnEuTb2q2syrwD9X+x/PkL77C4T+5ZI+XHX5hV+Mzei1xfP6G72H1OH7Ibg8W2nKjtbdoQPTGdnUXeCGOtVb9Vsz2lUsx0s6IZ2YljZ2D8po570z1B5HeagoBOWp/JS2QhlWvpxzQ6ZFX/SLXKRufdqvHjW9q8jOqnDB5rx4bXXBbgY6efisZvvNgz4yPfJaGWR+guIWsCeWVpWpSeNBArcSsCxWhwWAGwPVOZyvYsfKELV9c68nFX8Phj/rkPZJ6vvXiA77oQAOFv4wA13bwBAlHGuxSjir1TDiASHdF2MjscLNHgh6wsgLRNHHfyVPHFlq8rZClpLLxg2ckd9390RIuJImnJujuBiz/KtZLiO2N6Q7zM5hLVdoBOoe02TiBsZlSSrglkFInnmjRbUPgb/DFW3M6y+WAhVJ0O+X+yxNQ61Dp2R6SqGWvbK/R+46ZD/wsZNZoBKcJJWXks9O6Etc1V+ZscgHwCQUOe83XYrX3L4ZQcz7rlgtPefNeIV79bjvl5YBOv6fVvsYZLXe5+YSJne4wevdHHSA2l2VVRxOUeyh8g9bclLo2aZhx6wWBHNwFIKOAQt2VNaHyZqtxKG2NcB9ql/RK6fHDSr5IxyMPd775wmK/oOE5rvUFKd/YhEP4f8fMHdf+y87obHLHS9dxi6Sf5HHVBxJNd+tadQ5iiJBbgboRyYL8f97GxFpfoTQpxKvgRtlOQ/yFlruI7sQi3Ok15tI52ZMnrPV7Zr7Vc/IEXyX1h0D3zBXyBVsc9k9Mbad1aQLk+sKinZvbyP4bBgBnZpLVnGnFKL8WjO5BdZDOkbFUlBcGlSGawo8rtXyHx+kpT5xWYIrTvTp9T9+0jd3ekOhbTpbUcV8a/ajXeLSPQitOv9pVDvSxS7OVeS0Cn42WuHJ4t+wThE6rOIOXrUv91QjnoNgtD1sQU2a/V1sou75sUtEHJI76RZv+/dPtxe+61iITplxwRS+Nf1j3LYe/3MCXTc9y0p4Ptrq3DSv/P++8o9FNjW8tAAAAAElFTkSuQmCC' Local $bString = Binary(_Base64Decode($Background)) If $bSaveBinary Then Local $hFile = FileOpen($sSavePath & "\hexabump.png", 18) FileWrite($hFile, $bString) FileClose($hFile) EndIf Return $bString EndFunc ;==>_Background Func _Base64Decode($sB64String) Local $a_Call = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "ptr", 0, "dword*", 0, "ptr", 0, "ptr", 0) If @error Or Not $a_Call[0] Then Return SetError(1, 0, "") Local $a = DllStructCreate("byte[" & $a_Call[5] & "]") $a_Call = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "struct*", $a, "dword*", $a_Call[5], "ptr", 0, "ptr", 0) If @error Or Not $a_Call[0] Then Return SetError(2, 0, "") Return DllStructGetData($a, 1) EndFunc ;==>_Base64DecodeIt will open the calculator and waits that it will be closed. This is the simualtion of runwait. Does it fit to your needs? Br, UEZ1 point -
How to post code on the forum
FrancescoDiMuro reacted to Jon for a topic
1 point -
How many assholes we got on this ship, anyhow?1 point
-
Hello World ! I would like to introduce my script that will give you lots of fun taking benefit of the fabulous Unicode System. It is dedicated to the inventors of AutoIt. What a great scripting language, now finally supporting Unicode. Thank you. i had to zip it because of its size. the zip contains the au3. you will find a description in the next postings. j. UnicodeKeyboardSetupv1.0.zip1 point
-
Forum rules updated
UrgessyTrek reacted to Valik for a topic
I updated the Forum Rules today to clarify expected behavior when reporting spammers. The additional text is included below. If you have not read the forum rules I strongly suggest you take this opportunity to do so. Reporting Spammers There are a couple special notes regarding spammers: Report the spam post but do not acknowledge it in any way. Do not quote it, post something "witty" about it or post "reported". The latter is a particularly bad habit some people have. This creates extra work for the moderators and serves no purpose. Not only do the moderators have to delete the spam post but they must also delete your post. Even if a particular post is reported multiple times it only creates one report on the back-end with all the report comments so there is really no reason to announce you have reported a spammer.If a user makes multiple spam posts it is only necessary to report one post. In your report comment mention that the user has other spam posts so we know to look at their content to find the others. In all likelihood each post will end up getting reported by other people anyway. One report and a note to check the other posts is sufficient, however.1 point -
AutoIt v3.3.7.18 (Beta) Released
UrgessyTrek reacted to Valik for a topic
Special Note: This is an official beta release but it is not digitally signed. Only Jon has the certificate used for digital signatures and the last time I checked I was not Jon. 3.3.7.18 (26th September, 2011 (Beta) ObjCreateInterface() now has documentation. Test it out! Report any bugs, questions, et cetera so we can get it finalized. Report issues here. Download here.1 point -
Great my dad asked me how he could type russian signs on a norwegian keyboard. now i found this1 point
-
I have to make a warning: the current autoit version 3.2.10.x has a bug. the edit control does not behave correctly. so my script does not work with v3.2.10.x ! as far as i know it works with autoit v3.2.8.1 or (where it was written in) before. i hope the bug will be fixed soon. i add a download link for the .exe version. it is compiled with v3.2.8.1 and working. sorry j. UnicodeKeyboard_1.0.exe1 point
-
working on a new version having fixed this problem. the help works though in main program, or doesn't it ? any more problems with my script ? j. Edit: just want to point out that this first version is just the base for the extensions i'm working on. coming versions will be much more interesting.1 point
-
1 point
-
Even better! Look near the bottom of my sig. Downloads section1 point
-
You can only do certain things until you have made a minimum number of posts so I expect that's what wrong. Using up your allowed storage space is a problem which I get round by posting a zipped shortcut. Store the file to be downloaded somewhere where it's free, make a link to the file, zip the link and post the zipped link which will usually be less than 300 bytes. You could just post the link but then you wouldn't know if or how many people had downloaded it. So someone who wants the file clicks the zip link and downloads it and then unzips it. Then they have a link to your files which they can use again if they need to without even going to the forum.1 point
-
There was a problem with the help button, i fixed it. try downloading again the zip. sorry ........... I don't know why it opens many windows, should just open one. i will find out. Edit: i think i got it now ! j1 point
-
Fuck! I accidentally clicked the (?) and the console spammed an Error and now its rapidly opening a million IE windows! AHHHHHH! Edit: Ok, I got it under control... Couldn't open Taskman, Au3, the start menu was messed up and I couldn't open Run. Finaly IE figured out it had an error and gave me the error report window, everything is normal now.1 point
-
i just need more attachment space. my Rosetta Stone now is 608 kb, and Unicode Keyboard 525 kb. that's all. nothing bad. :-) j. the problem is, there is no option for attaching something....... what's wrong ?1 point
-
well, here is the description: 0. Introduction To Unicode Keyboard and Editor: =================================== Unicode Keyboard is a small and esay to use Unicode Editor with national keyboard support. The international Unicode standard enables the simultaneous bidirectional use of millions of language charcters, scientific and other signs in one document without having to switch the language settings of your computer ("code pages"). But how can you take profit of Unicode while you still have only 56/58 keys on your keyboard ? Unicode Keyboard helps you out to advance your writing skills with ease and fun ! You will be enabled to create bi- or multinational texts, scientific documents and you will enjoy enriching your simple text-only documents, professional presentations, business letters or e-mails with fantastic new symbols. This version 1.0 supports the national keyboards and characters of the following countries: Central and Western Europe: German, English, French, Dutch, Italian, Portuguese, Spanish, Latin, Multilingual Nordic Languages: Danish, Swedish, Norwegian, Finnish, Sami, Icelandic East and South East Europe: Russian (cirillic), Estonian, Latvian, Lithuanian, Ukrainian (cirillic), Polish, Czech, Slovak, Hungarian, Slovenian, Croatian, Serbian (cirillic), Albanian, Romanian, Bulgarian (cirillic), Greek, Turkish Asia: Persian (Farsi), Japanese (Katagana + Hiragana), Korean, Chinese (simplified + traditional), Vietnamese, Thai, Indonesian, Bengali Africa and Middle East: Hebrew, Yiddish, Arabic, Azeri (cirillic), Armenian America: Latin American Spanish, Brazilian Portuguese Step by step I will add further languages and sign sets like mathematics, astronomy, chemistry, hieroglyphs, musical notes and many more. The Unicode system supplies a vast and fascinating amount of editable characters. Further features: - Advanced editing tools like exchange and append to clipboard, fonts selection. - Phonetical Chinese keyboard with 20.000 predefined chinese signs and magnifying glass to view the signs. - Automatic Left-to-Right, Right-to-Left and bidirectional writing, setting of direction changing marks. - Typing either into the internal editor or directly into a document supported. - Real keyboard simulation of all necessary keys incl. key repetition. Simulating keyboard behaviour on the special nonspacing "DeadKeys" (Accents). - Save function for texts (in UTF-8 encoding). 1. Requirements before using Unicode Keyboard: =================================== ! Very important ! While Windows Vista is already based upon Unicode by standard (as far as I know), Windows XP still uses the ANSI Code Page standard (national settings). You have to change your code system to international Unicode by making the following steps: 1. Open Internet Explorer 2. Click View (on the menu bar), then Encoding => More => Chinese Traditional (BIG5). (The same can be achieved by installing the Asian language support from the WinXP CD via Control Panel => Region Settings => Languages). 3. Follow the directions on screen to install the language pack from your Windows CD. After installation is completed, you may need to restart your computer. 4. When you are able to use your browser again, make sure the browser is UTF-8 encoded by clicking once more: View (on the menu bar), then Encoding => Unicode (UTF-8) 5. Go once more to Control Panel => Region Settings => Languages and make sure that both checkboxes are checked (Right-to-Left writing and East-Asian languages). Remark: Unicode is not supported by Win9x OS or lower and Unicode Keyboard will not work on these systems ! 2. Installing Unicode Keyboard: ====================== Unicode Keyboard comes with an installation routine. You will be guided through the process. During installation about 1000 graphic files will be downloaded from the Microsoft website. So please open Internet connection and firewall. The process will take about 5 minutes. Deinstallation: No system changes will be made. Simply delete the "Unicode" folder. 3. The Graphical User Interface: ======================= The use of the program is very intuitive and there is not much to explain. You will find some unknown keys on the bottom row of the virtual keyboard. The four left bottom keys are only used with Right-to-Left languages like Farsi, Arabic and Hebrew. The first two will mark a change of typing direction within a script from right to left and v.v. The other two buttons are for joining special Arabic and Thai characters together (they are typed onto each other). The "nbsp" button will type a non-breaking space. This means, a line will not be broken on such a space. The button ("<>") will change the general writing direction of the entire document (right-left, left-right). The light red buttons are nonspacing "Deadkeys". They wait for a subsequent key to type an accent on it. A tooltip will inform you of the exspected letters You will also find keyboards with so-called "Combining Diacritical Marks". They work similar to the nonspacing DeadKeys, but the letter is typed first and the accent (diacritic) afterwards. I find this method more practical. All keyboards have three levels: Basic - Shift - AltGr. The virtual national keyboards may slightly differ from the real ones in order to contain more characters or for practical reasons. The Multinmational keyboard is supposed to offer all characters of the latin (Western) languages. If you want to type directly into a document you can switch off the edit box by hitting the little arrow to the right and checking the "Top" checkbox. 4. Unicode Fonts: ============= The Unicode system (now v5.0) is still "under construction". From time to time further blocks of characters are added. Consequently there is no font available that covers all signs and characters. If you encounter display problems, try to change the font first. There are lots of special Unicode Fonts like: - Arial Unicode MS (part of Win XP or Windows Update KB 287247) (aruniupd.exe. Unicode. Version 0.86. TTF. © Ascender Corporation) or search for "Arial Unicode MS.zip" on a Brazilian Website - Lucida Sans Unicode (part of Win XP) (lsansuni.zip, Unicode, Version 2.00. TTF. Size: (177.16 kb)) - Palatino Linotype (palab.zip, Unicode, Version 1.40. TTF. Size: (999.01 kb)) - Code2000 (code2000.zip. Unicode. Version beta 1.13. TTF. Size: (1,218.53 kb)) - Code2001 - Code2002 - Bitstream Cyberbit (cyberbit.zip. Unicode. Version Version beta 2.00. TTF. Size: (6,210.58 kb)) - XSerif Unicode (xsuni.zip, Unicode, Version 1.00. TTF. Size: (50.59 kb)) - Alphabetum Unicode I warmly recommend Code2000 if you want to use exotic glyphs like Runics, Inuit, Coptic, Ethiopic, Cirth or Klingon. It containes most of the Unicode signs and impressively beats the others by far. Try to find the latest versions in Internet, e.g. "http://www.orwell.ru/test/download". There are more (partly free) Unicode fonts available, but none of them will cover all characters and signs. Furthermore, for all foreign languages and Unicode blocks you can find specialized font sets online. 5. Remarks: ========= If you want to save a document with Unicode characters you have to encode it in Unicode or you will find only question marks on reopening. E.g. in Notepad choose "Save as..." and select "UTF-8 in the bottom "Encoding" combo. New documents written with Unicode Keyboard will be automatically saved in UTF-8. I apologize for three small mistakes I found in the codes: 1. The Dutch capital letter "ij" must be written as "Ij", not "IJ". 2. The Skandinavian and Baltic letters "Õ" and "õ" are wrongly painted on the keyboards (Double Accent Acute instead of Tilde), but will be typed correctly. 3. The program´s default font "MS Sans Serif" fails to type the characters "digraph oe ligatured" and "digraph OE ligatured", as used on the Multilingual keyboard. Please choose a different font like "Tahoma". 6. The Rosetta Stone Project: ===================== Unicode Keyboard is an integral part of "Rosetta Stone", my universal translating program which can be downloaded as well from the AutoIt forum. I split this program because the keyboards developed their individual indications beyond translations. Rosetta Stone is intended to develop step by step into a universal translating tool. I will appreciate any kind of support. Of course you can alter my keyboards in a way that better fits your purpose. If you think you found an improvement or if you are a native speaker, please inform me so that I can update my work. Have fun ! peace on earth jennico click here for Rosetta Stone1 point
-
well, here is the download: i had to zip it because of its size. the zip contains au3 and exe. one second please. cannot attach anything don't know why.1 point