All Activity

This stream auto-updates   

  1. Past hour
  2. Thanks for unexpected surprise info, lol
  3. Yesterday
  4. No worries, honestly I was not really sure wether to post in MVP or here ;)...
  5. This one works fine for me, although I personally prefer an exclamation mark an and underscore ("!_ImFirst")as the first character to shift folders to the top in a sorting. ; see also ; FileCreateShortcut(@AutoItExe, @StartMenuDir & "\'_AutoIt_Test.lnk", "", "", "Link to '_AutoIt", RegRead('HKCR\AutoIt3Script\DefaultIcon', ''))
  6. Try something like this here. #include <ButtonConstants.au3> #include <GDIPlus.au3> #include <GUIConstantsEx.au3> #include <StaticConstants.au3> #include <WindowsConstants.au3> Opt('MustDeclareVars',1) GUIRegisterMsg($WM_PAINT,'WM_PAINT') Global $gX0=10,$gX1=880,$gY0,$gY1,$gForm1,$glblPic,$gCtlWid,$gCtlHt,$imgWid,$imgHt Global $ghCanvas,$ghImage,$ghPen,$ghPen2,$gGraphicPic,$ghMatrix,$ghBitmap,$ghPathLine,$ghPathRectL,$ghPathRectR,$aCursor main() Func main() $gCtlWid = 893 $gCtlHt = 480 $gForm1 = GUICreate("Form1", $gCtlWid+50, 601, 192, 114) $glblPic = GUICtrlCreateLabel("", 8, 8, $gCtlWid, $gCtlHt) Local $btnRotate = GUICtrlCreateButton("Rotate", 472, 560, 65, 25) Local $btnExit = GUICtrlCreateButton("Exit",600,560) GUISetState(@SW_SHOW) Local $oldY0,$oldY1 _GDIPlus_Startup() $ghPen = _GDIPlus_PenCreate(0xFFA04040,3) $ghPen2 = _GDIPlus_PenCreate(0xFF00FF00,4) $ghImage = _GDIPlus_ImageLoadFromFile('pergola.jpg') Local $hnd = GUICtrlGetHandle($glblPic) $gGraphicPic = _GDIPlus_GraphicsCreateFromHWND($hnd) $gY0 = 400 $gY1 = 400 $imgWid = _GDIPlus_ImageGetWidth($ghImage) $imgHt = _GDIPlus_ImageGetHeight($ghImage) $ghBitmap = _GDIPlus_BitmapCreateFromScan0($imgWid, $imgHt) $ghCanvas = _GDIPlus_ImageGetGraphicsContext($ghBitmap) $ghPathLine = _GDIPlus_PathCreate() $ghPathRectL = _GDIPlus_PathCreate() $ghPathRectR = _GDIPlus_PathCreate() _GDIPlus_PathAddLine($ghPathLine, $gX0, $gY0, $gX1, $gY1) _GDIPlus_PathAddRectangle($ghPathRectL, $gX0 - 5, $gY0 - 5, 12, 12) _GDIPlus_PathAddRectangle($ghPathRectR, $gX1 - 7, $gY1 - 5, 12, 12) Local $b = True ; Loop until the user exits. While True If $gY0<>$oldY0 Or $gY1<>$oldY1 Then Paint() $oldY0 = $gY0 $oldY1 = $gY1 Else Switch GUIGetMsg() Case $GUI_EVENT_CLOSE,$btnExit ExitLoop Case $btnRotate Local $hImageClone=_GDIPlus_BitmapCreateFromScan0($imgWid, $imgHt) Local $hGfxClone=_GDIPlus_ImageGetGraphicsContext($hImageClone) ; rotate about centre $ghMatrix = _GDIPlus_MatrixCreate() _GDIPlus_MatrixTranslate($ghMatrix, $imgWid/2, $imgHt/2) Local $deg = Angle($gY1-$gY0, $gX1-$gX0) _GDIPlus_MatrixRotate($ghMatrix, -$deg) _GDIPlus_MatrixTranslate($ghMatrix, -$imgWid/2, -$imgHt/2) _GDIPlus_GraphicsSetTransform($hGfxClone, $ghMatrix) _GDIPlus_GraphicsDrawImageRect($hGfxClone,$ghImage,0,0,$imgWid,$imgHt) _GDIPlus_GraphicsDispose($hGfxClone) $hGfxClone=_GDIPlus_ImageGetGraphicsContext($ghImage) _GDIPlus_GraphicsClear($hGfxClone) ; See deskew notes document Local $ang = Abs($deg*3.14159/180) Local $nsrcX = ($imgHt/2 - $imgWid/2*sin($ang) - $imgHt/2*cos($ang))*tan($ang) _ - $imgWid/2*cos($ang) + $imgHt/2*sin($ang) + $imgWid/2 Local $nsrcY = ($imgWid/2 + $imgWid/2*Cos($ang) - $imgHt/2*Sin($ang))*Tan($ang) _ - $imgWid/2*Sin($ang) - $imgHt/2*Cos($ang) + $imgHt/2 Local $nSrcWidth = $imgWid - 2*$nSrcX Local $nSrcHeight = $imgHt - 2*$nSrcY ; crop _GDIPlus_GraphicsDrawImageRectRect($hGfxClone,$hImageClone, _ $nSrcX,$nSrcY,$nSrcWidth,$nSrcHeight,0,0,$nSrcWidth,$nSrcHeight) GUICtrlDelete($glblPic) _GDIPlus_GraphicsDispose($gGraphicPic) $glblPic = GUICtrlCreateLabel("", 8, 8, $gCtlWid*$nSrcWidth/$imgWid,$gCtlHt*$nSrcHeight/$imgHt) Local $hnd = GUICtrlGetHandle($glblPic) $gGraphicPic = _GDIPlus_GraphicsCreateFromHWND($hnd) _GDIPlus_ImageDispose($hImageClone) $gy0 = 400 $gy1 = 400 Paint() Local $hImageClone2 = _GDIPlus_BitmapCloneArea($ghImage,0,0,$nSrcWidth,$nSrcHeight) _GDIPlus_ImageSaveToFile($hImageClone2,'H:\b\1.jpg') _GDIPlus_ImageDispose($hImageClone2) EndSwitch EndIf $aCursor = GUIGetCursorInfo($gForm1) If _GDIPlus_PathIsOutlineVisiblePoint($ghPathLine, $aCursor[0], $aCursor[1] - 8) Then _GDIPlus_PenSetColor($ghPen, 0xFFF08080) While $aCursor[2] _GDIPlus_PathReset($ghPathLine) _GDIPlus_PathReset($ghPathRectL) _GDIPlus_PathReset($ghPathRectR) $aCursor = GUIGetCursorInfo($gForm1) $gY0 = $aCursor[1] - 8 $gY1 = $aCursor[1] - 8 _GDIPlus_PathAddLine($ghPathLine, $gX0, $gY0, $gX1, $gY1) _GDIPlus_PathAddRectangle($ghPathRectL, $gX0 - 5, $gY0 - 5, 12, 12) _GDIPlus_PathAddRectangle($ghPathRectR, $gX1 - 7, $gY1 - 5, 12, 12) Paint() Sleep(10) WEnd Paint() $b = False ElseIf _GDIPlus_PathIsOutlineVisiblePoint($ghPathRectL, $aCursor[0], $aCursor[1] - 8) Then _GDIPlus_PenSetColor($ghPen2, 0xFF80FF80) While $aCursor[2] _GDIPlus_PathReset($ghPathLine) _GDIPlus_PathReset($ghPathRectL) _GDIPlus_PathReset($ghPathRectR) $aCursor = GUIGetCursorInfo($gForm1) $gY0 = $aCursor[1] - 8 $gX0 = $aCursor[0] - 8 _GDIPlus_PathAddLine($ghPathLine, $gX0, $gY0, $gX1, $gY1) _GDIPlus_PathAddRectangle($ghPathRectL, $gX0 - 5, $gY0 - 5, 12, 12) _GDIPlus_PathAddRectangle($ghPathRectR, $gX1 - 7, $gY1 - 5, 12, 12) Paint() Sleep(10) WEnd Paint() $b = False ElseIf _GDIPlus_PathIsOutlineVisiblePoint($ghPathRectR, $aCursor[0], $aCursor[1] - 8) Then _GDIPlus_PenSetColor($ghPen2, 0xFF80FF80) While $aCursor[2] _GDIPlus_PathReset($ghPathLine) _GDIPlus_PathReset($ghPathRectL) _GDIPlus_PathReset($ghPathRectR) $aCursor = GUIGetCursorInfo($gForm1) $gX1 = $aCursor[0] - 8 $gY1 = $aCursor[1] - 8 _GDIPlus_PathAddLine($ghPathLine, $gX0, $gY0, $gX1, $gY1) _GDIPlus_PathAddRectangle($ghPathRectL, $gX0 - 5, $gY0 - 5, 12, 12) _GDIPlus_PathAddRectangle($ghPathRectR, $gX1 - 7, $gY1 - 5, 12, 12) Paint() Sleep(10) WEnd Paint() $b = False Else If Not $B Then _GDIPlus_PenSetColor($ghPen, 0xFFA04040) _GDIPlus_PenSetColor($ghPen2, 0xFF00FF00) Paint() $b = True EndIf EndIf WEnd ; Clean up resources _GDIPlus_PathDispose($ghPathLine) _GDIPlus_PathDispose($ghPathRectL) _GDIPlus_PathDispose($ghPathRectR) _GDIPlus_MatrixDispose($ghMatrix) _GDIPlus_ImageDispose($ghCanvas) _GDIPlus_ImageDispose($ghImage) _GDIPlus_ImageDispose($ghBitmap) _GDIPlus_PenDispose($ghPen) _GDIPlus_PenDispose($ghPen2) _GDIPlus_GraphicsDispose($gGraphicPic) _GDIPlus_Shutdown() EndFunc Func Paint() _GDIPlus_GraphicsDrawImageRect($ghCanvas, $ghImage, 0,0, $gCtlWid, $gCtlHt) _GDIPlus_GraphicsDrawPath($ghCanvas, $ghPathLine, $ghPen) _GDIPlus_GraphicsDrawPath($ghCanvas, $ghPathRectL, $ghPen2) _GDIPlus_GraphicsDrawPath($ghCanvas, $ghPathRectR, $ghPen2) _GDIPlus_GraphicsDrawImageRect($gGraphicPic, $ghBitmap, 0, 0, $imgWid, $imgHt) EndFunc Func WM_PAINT() _WinAPI_RedrawWindow($gForm1, 0, 0, $RDW_UPDATENOW) Paint() _WinAPI_RedrawWindow($gForm1, 0, 0, $RDW_VALIDATE) EndFunc Func Angle($y, $x) ;return value is in degree Local Const $fPi = ACos(-1), $fPi2 = ACos(-1) / 2, $fRad = 180 / $fPi Switch True Case ($x > 0) Return ATan($y / $x) * $fRad Case ($x < 0 And $y >= 0) Return ATan($y / $x + $fPi) * $fRad Case ($x < 0 And $y < 0) Return ATan($y / $x - $fPi) * $fRad Case ($x = 0 And $y > 0) Return $fPi2 * $fRad Case ($x = 0 And $y < 0) Return -$fPi2 * $fRad Case ($x = 0 And $y = 0) Return 0 EndSwitch EndFunc You can move the line and the rectangle by hovering the mouse over it and pressing the lmb. The logic behind moving line / corners is not the best choice but might give you an idea.
  7. Ah silly me. ConsoleWrite(@AutoItVersion) Returns
  8. SciTE is an developer editor. I ask about AutoIt version.
  9. When changing the window transparency, the background transparency is completely lost. In the base example from the AutoIt Help you can move merlin across the screen without the white box around him since it's transparent. Now I wanted to add a fade in and fade out function (TransUp, TransDown) to make the example 2 a little more spooky: #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> Global $g_hGui, $g_aGuiPos, $g_hPic, $g_aPicPos, $trans = 0 Example() Func Example() $g_hGui = GUICreate("test transparentpic", 200, 100) $g_hPic = GUICreate("", 68, 71, 10, 20, $WS_POPUp, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $g_hGui) GUICtrlCreatePic("..\GUI\merlin.gif", 0, 0, 0, 0) GUISetState(@SW_SHOW, $g_hPic) GUISetState(@SW_SHOW, $g_hGui) HotKeySet("{ESC}", "Main") HotKeySet("{Left}", "Left") HotKeySet("{Right}", "Right") HotKeySet("{Down}", "Down") HotKeySet("{Up}", "Up") HotKeySet("{PGUP}", "TransUp") HotKeySet("{PGDN}", "TransDown") $g_aPicPos = WinGetPos($g_hPic) $g_aGuiPos = WinGetPos($g_hGui) ; Loop until the user exits. While 1 Switch GUIGetMsg() Case $GUI_EVENT_CLOSE ExitLoop EndSwitch WEnd HotKeySet("{ESC}") HotKeySet("{Left}") HotKeySet("{Right}") HotKeySet("{Down}") HotKeySet("{Up}") EndFunc ;==>Example Func Main() $g_aGuiPos = WinGetPos($g_hGui) WinMove($g_hGui, "", $g_aGuiPos[0] + 10, $g_aGuiPos[1] + 10) EndFunc ;==>Main Func Left() $g_aPicPos = WinGetPos($g_hPic) WinMove($g_hPic, "", $g_aPicPos[0] - 10, $g_aPicPos[1]) EndFunc ;==>Left Func Right() $g_aPicPos = WinGetPos($g_hPic) WinMove($g_hPic, "", $g_aPicPos[0] + 10, $g_aPicPos[1]) EndFunc ;==>Right Func Down() $g_aPicPos = WinGetPos($g_hPic) WinMove($g_hPic, "", $g_aPicPos[0], $g_aPicPos[1] + 10) EndFunc ;==>Down Func Up() $g_aPicPos = WinGetPos($g_hPic) WinMove($g_hPic, "", $g_aPicPos[0], $g_aPicPos[1] - 10) EndFunc ;==>Up Func TransUp() $trans -= 15 If $trans < 15 Then $trans = 15 If $trans > 255 Then $trans = 255 WinSetTrans($g_hPic, "", $trans) EndFunc Func TransDown() $trans += 15 If $trans < 0 Then $trans = 0 If $trans > 255 Then $trans = 255 WinSetTrans($g_hPic, "", $trans) EndFunc It fades in and out but now you see the white box around merlin. I sadly can't think of a workaround. I tried changing $g_hGUI and $g_hPic both and in different orders with no effect. This is very important to me. Please guide me!
  10. They are? I am not sure they are. Just because that is true for many things perhaps, does not mean it is true for all. AutoIt is more than just another version release. Users also provide further functionality with UDFs etc. When you see AutoIt is starting to fall behind, then that is the time to get worried. I don't think you can class AutoIt as the same kind of beast that many others are, as it has always danced to its own tune ... though I admit, that in more recent years, going by worrying changes at times to the Help file (now I am using latest AutoIt and discovering them), it has been pushed by some here in the same mental direction as most other languages. For me, AutoIt always stood out, especially for ease of use, and clear explanations and examples for newbies. If you really want something to worry about, worry about the gist of that last comment. @Au3Builder - Look and ye shall find. Check out the Chat Forum section here, and you will find that topics such as yours (this here) have been going on for years (not months my good bud Dcoder) ... well beyond the current version of AutoIt. Further to all that. AutoIt naturally went through a long developmental stage, but in reality by the time of Windows 10 has caught up pretty much, and now become quite a mature language. Mature languages often suffer a significant slow down, and just keep pace from then on .. until they die or not. Let's wait and see what happens with the next version of Windows shall we.
  11. Fileinstall a second .exe doing just that, run it in the background as a helper process and kill it when main process is done?
  12. @ Melba23 thanks a lot for the help, problem solved!
  13. SciTE - Version 3.7.3 I have tired running the script as x32, x64, as .au3 and complied but the issue persists.
  14. I want to delete the autoit word from all txt files including subfolders. I do not understand me #include<file.au3> Dim $sourceFolder = @ScriptDir $sFilters = "*.txt" _moveall() Func _moveall($sDest = @ScriptDir) If @error Then SetError(1, 0, 0) Local $aFiles = _FileListToArrayRec(@ScriptDir, $sFilters, $FLTAR_FILES, $FLTAR_RECUR, $FLTAR_NOSORT, $FLTAR_FULLPATH) If @error Then Return For $i = 1 To $aFiles[0] $resultFile = StringRegExpReplace($aFiles[$i], "- Autoit", "") FileMove($aFiles[$i] & "\" & $aFiles[$i], $sourceFolder & "\" & $resultFile) Next EndFunc
  15. i've been working a lot with listview recently, and found out that groups can be created to expand/collapse the items that belong to them. While a state does exist to collapse it a will, a state does not exist to expand a group within a listview at will. So that got me thinking, how do message boxes, treeview, listviews and other controls that don't use GUIGetMsg() to capture mouse clicks work? If I click "ok" on a message box, how does it automatically know to close it out? Same with a list/treeview, if I click on the "+" sign, how does it know to expand or collapse a group? Where is all that defined?
  16. You may whish to use the (text) commands of Eagle instead of the GUI automation. You may also use Eagle scripting ou Eagle language support. May I ask why you need to automate schematic entry?
  17. Isn't that statement somewhat judgmental and shouldn't that be: Why would you want to do this? Jos
  18. this sounds like evil doings going on.
  19. You want to prevent a user from shutting their own device down?
  20. I've got a similar problem that maybe someone can help. I place a comma in front of my custom startmenu folders so they will always be at the top of the startmenu like this: "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\,Browsers". But autoit doesn't play nice with folders that begin with a comma. I know I could start each folder with an "a" or "x" and achieve the same directory-organizing effect but a comma at the beginning is far less noticeable on the menu. Is there anyway around this since autoit uses commas to separate command statements?
  21. #include <ButtonConstants.au3> #include <EditConstants.au3> #include <GUIConstantsEx.au3> #include <GuiStatusBar.au3> #include <ListViewConstants.au3> #include <StaticConstants.au3> #include <TabConstants.au3> #include <WindowsConstants.au3> #include <ColorConstants.au3> #include <GUICtrlOnHover.au3> #include <WinAPI.au3> #include <GuiListView.au3> #Region ### START Koda GUI section ### Form=c:\users\user\desktop\Автоключ\form1.kxf $hGUI = GUICreate('Электронный заказ. ООО "ИК Автоключ"', 950, 765, Default, Default, BitOR($WS_MAXIMIZEBOX, $WS_MINIMIZEBOX, $WS_SIZEBOX)) $idUpdatePrice = GUICtrlCreateLabel("Обновить прайс", 830, 5, 100, Default, $SS_RIGHT) GUICtrlSetFont(-1, Default) _GUICtrl_OnHoverRegister(-1, "_Style_1", "_Style_1_1") GUICtrlSetResizing(-1, 4 + 768) $idTab = GUICtrlCreateTab(10, 10, 930, 700) GUICtrlSetResizing(-1, 102) GUICtrlCreateTabItem("Каталог товаров") GUICtrlCreateLabel('', 20, 40, 180, 180, $SS_BLACKRECT) GUICtrlSetResizing(-1, 802) GUICtrlCreateLabel("Сумма заказа:", 20, 235, 180, Default, $SS_CENTER) GUICtrlSetFont(-1, 10, 700, 0, "Verdana") GUICtrlSetResizing(-1, 802) $idTotal = GUICtrlCreateLabel("250000.00 руб.", 20, 255, 180, Default, $SS_CENTER) GUICtrlSetFont(-1, 14, 700, 0, "Verdana") GUICtrlSetColor(-1, $COLOR_GREEN) GUICtrlSetResizing(-1, 802) $idSaveOrder = GUICtrlCreateLabel("Сохранить заказ", 20, 290, 180, Default, $SS_RIGHT) GUICtrlSetFont(-1, Default) _GUICtrl_OnHoverRegister(-1, "_Style_2", "_Style_2_1") GUICtrlSetResizing(-1, 802) GUICtrlCreateLabel("Фильтр по наименованию / коду:", 20, 350, 180) GUICtrlSetResizing(-1, 768 + 64 + 2) $idSearchText = GUICtrlCreateInput("", 20, 370, 155, 23) GUICtrlSetResizing(-1, 768 + 64 + 2) $idSearchGo = GUICtrlCreateButton("Х", 180, 370, 23, 23) GUICtrlSetResizing(-1, 768 + 64 + 2) $idCatalog = GUICtrlCreateListView("Код|Наименование товара|Производитель|Цена", 210, 40, 720, 353) GUICtrlSetResizing(-1, 102) _GUICtrlListView_SetColumnWidth($idCatalog, 0, 50) _GUICtrlListView_SetColumnWidth($idCatalog, 1, 495) _GUICtrlListView_SetColumnWidth($idCatalog, 2, 100) _GUICtrlListView_SetColumnWidth($idCatalog, 3, 70) $idOrder = GUICtrlCreateListView("", 20, 400, 910, 300) GUICtrlSetResizing(-1, 576 + 2 + 4) $idStatusbar = _GUICtrlStatusBar_Create($hGUI) GUICtrlCreateTabItem("") GUISetState(@SW_SHOW) $tRect = _WinAPI_GetWindowRect($hGUI) ;MsgBox(0,'',DllStructGetData($tRect, "Right")-DllStructGetData($tRect, "Left")) GUIRegisterMsg($WM_SIZE, "MY_WM_SIZE") GUIRegisterMsg($WM_GETMINMAXINFO, "_WM_GETMINMAXINFO") ; Monitors resizing of the GUI While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd Func _Style_1() ;GUICtrlSetBkColor($idUpdatePrice, 0xbac3e0) GUICtrlSetFont($idUpdatePrice, Default, Default, 4) GUICtrlSetCursor($idUpdatePrice, 0) EndFunc ;==>_Style_1 Func _Style_1_1() ;GUICtrlSetBkColor($idUpdatePrice, -1) GUICtrlSetFont($idUpdatePrice, Default, Default, Default) GUICtrlSetCursor($idUpdatePrice, -1) EndFunc ;==>_Style_1_1 Func _Style_2() ;GUICtrlSetBkColor($idUpdatePrice, 0xbac3e0) GUICtrlSetFont($idSaveOrder, Default, Default, 4) GUICtrlSetCursor($idSaveOrder, 0) EndFunc ;==>_Style_2 Func _Style_2_1() ;GUICtrlSetBkColor($idUpdatePrice, -1) GUICtrlSetFont($idSaveOrder, Default, Default, Default) GUICtrlSetCursor($idSaveOrder, -1) EndFunc ;==>_Style_2_1 Func _WM_GETMINMAXINFO($hWnd, $Msg, $wParam, $lParam) ; used to limit the minimum size of the GUI #forceref $hWnd, $Msg, $wParam, $lParam If $hWnd = $hGUI Then Local $tagMaxinfo = DllStructCreate("int;int;int;int;int;int;int;int;int;int", $lParam) DllStructSetData($tagMaxinfo, 7, 964) ; min width DllStructSetData($tagMaxinfo, 8, 800) ; min height ConsoleWrite(ControlGetPos($hGUI, '', $idCatalog)[2] & @CRLF) _GUICtrlListView_SetColumnWidth($idCatalog, 1, ControlGetPos($hGUI, '', $idCatalog)[2] - 230) Return $GUI_RUNDEFMSG EndIf _GUICtrlListView_SetColumnWidth($idCatalog, 1, 700) EndFunc ;==>_WM_GETMINMAXINFO Func MY_WM_SIZE($hWnd, $iMsg, $iwParam, $ilParam) _GUICtrlStatusBar_Resize($idStatusbar) ;ConsoleWrite(ControlGetPos($hGUI, '', $idCatalog)[2] & @CRLF) _GUICtrlListView_SetColumnWidth($idCatalog, 1, ControlGetPos($hGUI, '', $idCatalog)[2] - 230) Return $GUI_RUNDEFMSG EndFunc ;==>MY_WM_SIZE When the GUI is maximized (_WM_GETMINMAXINFO), the _GUICtrlListView_SetColumnWidth function does not work. Can you explain why?
  22. Belini, This is how I do it: #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> ; Set resize mode for controls Opt("GUIResizeMode", $GUI_DOCKAUTO) Global $iGUIInitSize = 500 $hGUI = GUICreate("Test", $iGUIInitSize, 500, -1, -1, BitOR($WS_SIZEBOX, $WS_SYSMENU)) $cButton = GUICtrlCreateButton("Resizing text", 10, 10, 80, 30) $iLast_Control = GUICtrlCreateDummy() GUISetState() GUIRegisterMsg($WM_SIZE, "_WM_SIZE") While 1 Switch GUIGetMsg() Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd Func _WM_SIZE($hWnd, $iMsg, $wParam, $lParam) #forceref $iMsg, $wParam, $lParam If $hWnd = $hGUI Then ; Calculate required font size Local $aGUI_Size = WinGetClientSize($hGUI) $iFontSize = Int(2 * (.25 + (8 * $aGUI_Size[0] / $iGUIInitSize))) / 2 ; Reset font size for all controls on main GUI For $i = 0 To $iLast_Control GUICtrlSetFont($i, $iFontSize) Next EndIf EndFunc ;==>_WM_SIZE M23
  23. Oh I can add, that it has been successfully used and tested at a school district with over 1000 employees and over 6000 students.
  24. Here is the code for the Application store itself. In here is the code for displaying the applications, and to install the applications. I will help with any questions as much as I can. This post has actually prompted me to want to get back into it again, because I see there being so much potential. I had this idea, that it could "rival" :-) system center in terms of functionality. This would be the equivalent of Software Center, where users could install applications as they need it, and I would then build another application that would utilize powershell to deploy applications on demand. More of a dream of building it than a reality right now, but I hope to work on it in the new year at least. So the App Store now has added features like, displaying product keys, and only displaying product keys for users that have access to the application. i.e. if you want to list a program like Camtasia and don't have a package where the serial key is embedded, you could have it display in the app store if you like, and only the users you have granted rights to the app can see that product key. I have added the ability to limit the number of installs for applications, so you could say that you would only allow the Adobe CS Suite to be install 20 times. After that, the counter hits 0 and the app store will stop more installs being made. Applications can now also be password protected, so you may not want to allow installs by group, but perhaps provide users with a password to install the application. You can now set the password in the app store to help with restrictions if needed. Overall I think the application is more stable and robust than it ever was before. I think I came along way with it, and I know there are further improvements yet that I can make. I will get to those. I hope it comes in useful. AppStoreV3.1.au3
  25. There is a now GUI that is used to configure the Application store. I have attached screenshots of this. I cannot attach screenshots, of the App Store app any more, because I don't the DB or access to a SQL server to create a DB right now to replicate the setup. I will add these when I get around to it though. In the Configuration GUI though, you can enter your own credential information which is saved to an INI file. The password is hashed out, so it cannot be read in clear text. Permissions to application installs are done by AD group membership and, there is a field where you can specify where to read those groups from. You can add a company logo, rename it to your personal company. I am having problems uploading the code for the Application Store app itself, so I will try that in a separate post below. AppStoreConfig.au3
  26. Thank you very much for your help
  27. I have decided to, at least, add the ability to move the line vertically with the mouse. I have searched this website (using Google) and have looked at example scripts in the Help. I found the example for_GDIPlus_MatrixGetElements() and copied the code for WM_LBUTTONDOWN() and WM_MOUSEMOVE() from there, and modified it slightly to meet my needs, but I can't get it to work. Help will be greatly appreciated. I am looking at 2 ways of moving the line vertically: Moving the mouse up and down with the left button depressed when the cursor is in the picture moves the line Dragging the line up and down with the mouse I would prefer the code to do case 2, but a solution for case 1 would be sufficient, at least for the immediate future.
  1. Load more activity