This topic is now closed to further replies.
Recently Browsing 0 members
No registered users viewing this page.
I was wondering if someone can help me to create an AutoIT script which can create a ticket in a TopDesk environment.
The API is wel documented, but i have not enough knowlegde at this moment to get this up from the ground. If someone could help me or if i could hire / pay someone to help me with this, that would be great.
Information about the API can be found here: https://developers.topdesk.com/
Is there a place where i maybe can hire AutoIT professionals to help me with this?
On freelancer.com is an option, but there are alot of people responding which doesn't know a thing about AutoIT.
Welcome to Ailave, future programming project
Ailave is a suggestions-powered project that focuses in simplifying AutoIt / Au3 codes, Ailave is a code-shortener that will be equipped with lots of functions and constants that will make ur code shorter and more effective, you don't need to type thousands of lines of code to make a GUI or a function, Ailave does the hard work, you only tell him what to do.
Ailave will include:
*Lots of Functions that will make ur coding a more comfortable and faster experience
*GUI'S! > Yes, it will include GUI's templates, creating a script with GUI was never easier!
*Suggestions-Powered > Suggest me what you want Ailave to have! (Click here for more information)
*Colors! > It will include a large library of color codes that will be helpful.
You are your own limit to imagination, suggest me an idea!
What benefits Ailave offers?
Easy to understand codes, easier debugging, faster coding, more complete functions, more effective and shorter scripts, no need to create lots of functions, no need to code thousands of lines, and an infinite list of benefits you will experiment yourself soon
How Ailave works?
It gives u tons of functions that you can use as individual commands, that way you dont need to create thousands of lines to code more effective scripts.
Where i can download Ailave?
Ailave is still an under-development project and an official version of Ailave won't be released until June, 2018, But you can suggest me ideas.
Click here to see Ailave's project website
Want to contribute to Ailave's Development?
We are currently crafting new functions and we would love to hear from you.
Hello AutoIT masters
I am gonna start writing a fun little script to resize X amount of images with the Horizontal/Vertical aspects to 15/15 instead of the standard 100/100
I need to be able to do this with X amount of images and after changing the dimensions I need to save all the images in a path.
so to keep things simple.
1: File open prompt
2: Choose X amount of images
3: Automatically choose 15/15 for all images
4: Save in path chosen by user
5: Might be more to come.
6: the faster the better!
I am gonna start this project tomorrow, any help/references is highly appreciated!
Thanks in advance and Wish me luck
#### I Hit a bump on the road ###
I successfully manage to do what I want to do and I successfully manage to rewrite names but 3 of the image names won't rename?
So lets say I have 10 images that all get resized, then 7 of them gets renamed but not the last three, confuses me quite a bit?
Thanks in advance!
Func renameall() local $path = @ScriptDir & "\" & $nymappe & "\" local $ret Local $hSearch = FileFindFirstFile($path & "*.jpg") $i = 1 While 1 $sFileName = FileFindNextFile($hSearch) If @error Then ExitLoop if FileMove($path & $sFileName, $path & String("NewName" & +$i) & ".jpg", 0) = 1 then ConsoleWrite($path & $sFileName & ' renamed to ' & $path & String("NewName" & +$i) & ".jpg" & @LF) Else ConsoleWrite('File rename failed for file = ' & $path & $sFileName & @LF) endif $i += 1 WEnd FileClose($hSearch) EndFunc Full script:
#Region ;**** Directives created by AutoIt3Wrapper_GUI **** #AutoIt3Wrapper_Icon=car.ico #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI **** #include <GDIPlus.au3> #include <File.au3> #include <Array.au3> #include <ColorConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <ProgressConstants.au3> ; Declare array Dim $Images ; Gets all JPG files in the current directory (@ScriptDir). Local $search = FileFindFirstFile("*.jpg") ; Check if the search was successful If $search = -1 Then MsgBox(0, "Error", "No JPG files could be found.") Exit EndIf ; Resize array While 1 If IsArray($Images) Then Local $Bound = UBound($Images) ReDim $Images[$Bound+1] EndIf $Images[$Bound] = FileFindNextFile($search) If @error Then ExitLoop WEnd ; Close the search handle FileClose($search) ; Create directory "resized" if not there yet $nymappe = InputBox("Mappe / Bil Navn", "Mappe / Bil Navn") If NOT FileExists(@ScriptDir & "\" & $nymappe & "\") Then DirCreate(@ScriptDir & "\" & $nymappe & "\") EndIf ; Loop for JPGs - gets dimension of JPG and calls resize function to resize to 50% width and 50% height For $i = 1 to Ubound($Images)-1 If $Images[$i] <> "" AND FileExists(@ScriptDir & "\" & $Images[$i]) Then Local $ImagePath = @ScriptDir & "\" & $Images[$i] _GDIPlus_Startup() Local $hImage = _GDIPlus_ImageLoadFromFile($ImagePath) Local $ImageWidth = _GDIPlus_ImageGetWidth($hImage) Local $ImageHeight = _GDIPlus_ImageGetHeight($hImage) _GDIPlus_ImageDispose($hImage) _GDIPlus_Shutdown() ;MsgBox(0,"DEBUG", $ImageWidth & " x " & $ImageHeight) Local $NewImageWidth = ($ImageWidth / 100) * 15 Local $NewImageHeight = ($ImageHeight / 100) * 15 ;MsgBox(0,"DEBUG: " & $i,$Images[$i]) _ImageResize(@ScriptDir & "\" & $Images[$i], @ScriptDir & "\" & $nymappe & "\" & $Images[$i], $NewImageWidth, $NewImageHeight) EndIf Next ; Resize function Func _ImageResize($sInImage, $sOutImage, $iW, $iH) Local $hWnd, $hDC, $hBMP, $hImage1, $hImage2, $hGraphic, $CLSID, $i = 0 ;OutFile path, to use later on. Local $sOP = StringLeft($sOutImage, StringInStr($sOutImage, "\", 0, -1)) ;OutFile name, to use later on. Local $sOF = StringMid($sOutImage, StringInStr($sOutImage, "\", 0, -1) + 1) ;OutFile extension , to use for the encoder later on. Local $Ext = StringUpper(StringMid($sOutImage, StringInStr($sOutImage, ".", 0, -1) + 1)) ; Win api to create blank bitmap at the width and height to put your resized image on. $hWnd = _WinAPI_GetDesktopWindow() $hDC = _WinAPI_GetDC($hWnd) $hBMP = _WinAPI_CreateCompatibleBitmap($hDC, $iW, $iH) _WinAPI_ReleaseDC($hWnd, $hDC) ;Start GDIPlus _GDIPlus_Startup() ;Get the handle of blank bitmap you created above as an image $hImage1 = _GDIPlus_BitmapCreateFromHBITMAP ($hBMP) ;Load the image you want to resize. $hImage2 = _GDIPlus_ImageLoadFromFile($sInImage) ;Get the graphic context of the blank bitmap $hGraphic = _GDIPlus_ImageGetGraphicsContext ($hImage1) ;Draw the loaded image onto the blank bitmap at the size you want _GDIPLus_GraphicsDrawImageRect($hGraphic, $hImage2, 0, 0, $iW, $iH) ;Get the encoder of to save the resized image in the format you want. $CLSID = _GDIPlus_EncodersGetCLSID($Ext) ;Generate a number for out file that doesn't already exist, so you don't overwrite an existing image. Do $i += 1 Until (Not FileExists($sOP & $i & "_" & $sOF)) ;Prefix the number to the begining of the output filename $sOutImage = $sOP & $i & "_" & $sOF ;Save the new resized image. _GDIPlus_ImageSaveToFileEx($hImage1, $sOutImage, $CLSID) ;Clean up and shutdown GDIPlus. _GDIPlus_ImageDispose($hImage1) _GDIPlus_ImageDispose($hImage2) _GDIPlus_GraphicsDispose ($hGraphic) _WinAPI_DeleteObject($hBMP) _GDIPlus_Shutdown() Call("renameall") EndFunc Func renameall() local $path = @ScriptDir & "\" & $nymappe & "\" local $ret Local $hSearch = FileFindFirstFile($path & "*.jpg") $i = 1 While 1 $sFileName = FileFindNextFile($hSearch) If @error Then ExitLoop if FileMove($path & $sFileName, $path & String("NewName" & +$i) & ".jpg", 0) = 1 then ConsoleWrite($path & $sFileName & ' renamed to ' & $path & String("NewName" & +$i) & ".jpg" & @LF) Else ConsoleWrite('File rename failed for file = ' & $path & $sFileName & @LF) endif $i += 1 WEnd FileClose($hSearch) EndFunc
I get a lot of tedious tasks I have to go through over and over in my IT work, a common one is waiting for Windows updates to finish so I can reboot a computer and then scan for more updates and then install them. This could be easily accomplished through an autoit script that follows a list of commands looking in a general area of the screen, looking for a specific color, clicking the color, rinse wash repeat.
I have a lot of these individual tasks I'm trying to accomplish regularly, and I don't want to develop individual scripts for each one, rather I want a control panel that will allow me to add functions one at a time in a graphical layout. I imagine a small text-box region in the bottom-left corner listing tasks 1 item at a time, and allowing me to edit them or re-arrange them in the control panel. It would allow me to do things like: select a window by title (this would be a button I press on the control panel which then waits for me to CTRL+Click a window title bar, it then knows this is the target window and captures it's name. Then it records the instructions in a list.)
After a list of tasks has been performed, it would save it as a simple text-file so that I can edit this command list again, or compile it into an executable. I know a lot of these things can be accomplished with the autoit3info program, and I don't mind if this plugs into that as long as all the interaction comes from the central control panel window.
Upon execution it should perform tasks slowly because many of the computers I work with perform very slowly. Ex: if it has instructions to click start menu-->all programs-->admin tools there should be a consistent delay in the mouse moving and the cursor clicking. Maybe even just wait for colors to change so it knows.
I want the following functions to be in the control panel:
Define Region (lets me draw a red square on screen, further commands can be specified to only look within this region) Find Color Pattern (Finds pixel colors for an image in a region, this should be used to match things like desktop icons, tasktray icons, etc. These might move around so it needs to look within a region to find a set of pixels that look like this and attempts an action). Send Keys (opens a text field where I can define keystrokes to send). Send Command (sends cmd line). Call Window (lets me target a window by title and then calls it up on script execution). For/While conditions (this will allow me to insert conditional values, ex: creating a for loop that attempts to find this color and click, but if it does that and then still can't find the color or window title for the next step then it can backstep and keep looking for the first color). There is more detail that I will write up at length in a doc that I can send to the developer.
I'm looking to keep this project around the $400 mark and can pay via paypal or other preferred and secure medium.
This is essentially a bot making program to help automate mundane computer tasks. Hopefully this task isn't too difficult for my budget, I'm open to input and discussion. Once the app has been developed I welcome the developer to release publicly under GNU.