Jump to content

Recommended Posts

Posted (edited)

CaptureIt v1.06

CaptureIt_Icon.png

This program designed to capture screenshots.

============

Main Features:

============

  • Full Screen Capture (display selection support).
  • Window Capture.
  • Selected area capture.
  • Free selection capture.
  • Save captured image in silent mode.
  • Set watermark for captured image.
  • Open captured image in graphic editor.
  • Print captured image.
  • Put captured image to clipboard.
  • Upload captured image (to image hosting services).
  • Share uploaded image on social networks.
  • Capture History.
  • Images format support:

    PNG

    GIF

    JPG - Quality can be set.

    BMP - Format can be set.

Download Page or >Downloads Section

[sources for AutoIt 3.3.10.2+ included in the archive]

Enjoy!

============

History Version:

============

  Reveal hidden contents

v1.06 [19.April.2015]

+ Added Free Selection Capture mode.

+ Added Set Watermark option.

+ Added option to share uploaded image on social networks.

* Fixed issue with wrong sorting in "Capture History".

* Fixed few issues with capturing layered windows.

* Better handling of second program copy run.

v1.05 [05.June.2014]

+ Added languages support.

+ Added multi display support (mostly for FullScreen mode).

+ Added option to restore settings defaults.

* Fixed problem uploading image to tinypic.com.

* Fixed strange bug when clicked menu item was captured in fullscreen mode.

* Changed Settings dialog.

* Icons updated.

v1.04 [02.June.2014]

+ UploadFile.dll is not used anymore, thanks to wakillon for uploading functions.

+ Added 6 image hosting services to upload captured image.

+ Added background window capture support. Now the non visible parts of selected window will be captured properly (Note: the window is captured without aero support).

+ Added "Capture History" (!!! EXPERIMENTAL !!!)

+ Added option to select Action after capturing.

+ Added option to wait N seconds before capturing.

* Another fix for extra pixels been captured.

* Changed About and Settings window.

* Icons updated.

v1.03 [20.Jul.2011]

* Now the tooltip that shown when the program starts, will be show just once.

* Changed interface color.

* Fixed bug when extra pixels was captured on maximized windows.

+ Added option to handle an issue with not captured windows that have WS_EX_LAYERED style.

To enable this option, set "Use Alternative Capture=1" under [Main Prefs] section in the config file (CaptureIt.ini). Disabled by default.

NOTE: it's limited only for FullScreen capturing.

v1.02 [16.Jul.2011]

* Fixed an issue with false possitive reaction from several antiviruses.

* Fixed not working upload captured image to imageshak.us feature.

* Source code improvements.

v1.01 [22.02.2008]

* Orfographic mistakes fixed.

* Fixed issue whith Full Screen Capture, on some monitors/systems was captured active window.

* Removed unused functions from the source.

* Added COM Errors Handler, will prevent application from hard crashing in some cases.

v 1.0 [21.02.2008]

* First release.

Edited by MrCreatoR

 

  Reveal hidden contents

 

 

AutoIt is simple, subtle, elegant. © AutoIt Team

Posted

Thanks gesller!

  Quote

You musta been working on this for a while?

Well, yes, the last few weeks i think :) - but the idea is very old, when Paulie posted the Au3Library, if i am not wrong, the functions _ScreenCapture was first introduced there.

 

  Reveal hidden contents

 

 

AutoIt is simple, subtle, elegant. © AutoIt Team

  • 2 weeks later...
Posted

Hi, very nice tool,

Would it be possible to make a screenshot from a whole web page with a scroll???

But only with autoit, no other tool

Tweaky

Posted

Thanks to all for the good feedbacks! :)

  Quote

Would it be possible to make a screenshot from a whole web page with a scroll???

A while ago i asked about this here, but the solution will involve external application usage ;).

 

  Reveal hidden contents

 

 

AutoIt is simple, subtle, elegant. © AutoIt Team

Posted

Really nice work! My only objection is the GUI looks rather odd with the default windows tabs. The tray looks great.

I would suggest using a hotkey box instead of three checkboxes and a combolist, I have some code that has a great example.

#include<GuiEdit.au3>
#include<SendMessage.au3>
#include<WindowsConstants.au3>
#include <GUIConstantsEx.au3>
#include <WinAPI.au3>

HotKeySet('{CAPSLOCK}', '_ExcludeHotkey') 
HotKeySEt('{NUMLOCK}', '_ExcludeHotkey')

Global Const $HKM_SETHOTKEY = $WM_USER + 1
Global Const $HKM_GETHOTKEY = $WM_USER + 2
Global Const $HKM_SETRULES = $WM_USER + 3

Global Const $HOTKEYF_ALT = 0x04
Global Const $HOTKEYF_CONTROL = 0x02
Global Const $HOTKEYF_EXT = 0x80; Extended key
Global Const $HOTKEYF_SHIFT = 0x01

; invalid key combinations
Global Const $HKCOMB_A = 0x8; ALT
Global Const $HKCOMB_C = 0x4; CTRL
Global Const $HKCOMB_CA = 0x40; CTRL+ALT
Global Const $HKCOMB_NONE = 0x1; Unmodified keys
Global Const $HKCOMB_S = 0x2; SHIFT
Global Const $HKCOMB_SA = 0x20; SHIFT+ALT
Global Const $HKCOMB_SC = 0x10; SHIFT+CTRL
Global Const $HKCOMB_SCA = 0x80; SHIFT+CTRL+ALT


$gui_Main = GUICreate('Get Hotkey', 220, 90)

$bt = GUICtrlCreateButton('See Value', 10, 50, 200, 30);
    GUICtrlSetState(-1, $GUI_DEFBUTTON)

$hWnd = _WinAPI_CreateWindowEx (0, 'msctls_hotkey32', '', BitOR($WS_CHILD, $WS_VISIBLE), 10, 10, 200, 25, $gui_Main)

_SendMessage($hWnd, $HKM_SETRULES, BitOR($HKCOMB_NONE, $HKCOMB_S), _
    BitOR(BitShift($HOTKEYF_ALT, -16), BitAND(0, 0xFFFF))); add ALT to invalid entries

GUISetState()

While 1
    Switch GUIGetMsg()
        Case $GUI_EVENT_CLOSE
            ExitLoop
        Case $bt
            $value = _GetCode($hWnd); $value is now equal to the string representation of your hotkey, like ^!q for example
    EndSwitch
WEnd

_WinAPI_DestroyWindow ($hWnd)

Exit

Func _GetCode($hWnd)
    $i_HotKey = _SendMessage($hWnd, $HKM_GETHOTKEY)
;~  Msgbox(0, '', $i_Hotkey)
    $n_Flag = BitShift($i_HotKey, 8); high byte
    $i_HotKeyNew = BitAND($i_HotKey, 0xFF); low byte
    $sz_Flag = ""

    $subtract = 0
    If BitAnd($n_Flag, $HOTKEYF_CONTROL) Then 
        $sz_Flag &= "CTRL + "
        $subtract += 512
    EndIf
        
    If BitAnd($n_Flag, $HOTKEYF_SHIFT) Then 
        $sz_Flag &= " SHIFT + "
        $subtract += 256
    EndIf
        
    If BitAnd($n_Flag, $HOTKEYF_ALT) Then 
        $sz_Flag &= " ALT + "
        $subtract += 1024
    EndIf 
    
    If $i_Hotkey - $subtract > 90 then 
        For $index = 96 to 105 
            If $i_Hotkey - $subtract = $index then $sz_Flag &= 'NUM ' & $index - 96
        Next
        
        
        For $index = 112 to 123 
            If $i_Hotkey - $subtract = $index then 
                $sz_Flag &= ' F' & $index - 111
            EndIf
        Next 
        
        If $i_Hotkey - $subtract >= 2081 and $i_Hotkey - $subtract <= 2093 then 
            $sz_Flag &= Chr($i_hotkeyNew)
        EndIf
    Else 
        $sz_Flag &= Chr($i_Hotkey - $subtract)
    EndIf 

    $string = $sz_Flag
                
    $temp = StringSplit($string, '+')
    
    $lastTerm = StringLower(StringStripWS($temp[Ubound($temp) - 1], 8))

    If StringLen($lastTerm) > 1 then
        If StringLeft($lastTerm, 1) = 'F' then
            $append = '{' & StringUpper($lastTerm) & '}'
        ElseIf StringLeft($lastTerm, 3) = 'NUM' then 
            $append = '{NUMPAD' & StringRight($lastTerm, 1) & '}' 
        EndIf
    Else
        $temp = StringLower(StringRight($string, 1))
        If $temp = '!' then
            $append = '{PGUP}'
        ElseIf $temp = '"' then
            $append = '{PGDN}'
        ElseIf $temp = '$' then
            $append = '{HOME}'
        ElseIf $temp = '#' then
            $append = '{END}'
        ElseIf $temp = '-' then
            $append = '{INS}'
        Else         
            $append = StringLower(StringRight($string, 1))
        EndIf
    EndIf
    
    $hotkeyAssignment = ''
    If StringInStr($string, 'CTRL') > 0 then
        $hotkeyAssignment &= '^'
    EndIf

    If StringInStr($string, 'SHIFT') > 0 then
        $hotkeyAssignment &= '+'
    EndIf

    If StringInStr($string, 'ALT') > 0 then
        $hotkeyAssignment &= '!'
    EndIf

    $hotkeyAssignment &= $append
    
    Msgbox(0, $sz_Flag, '$i_Hotkey == ' & $i_Hotkey & @CRLF & @CRLF & _ 
        '$i_HotkeyNew == ' & $i_HotkeyNew & @CRLF & @CRLF & _ 
        '$subtract == ' & $subtract & @CRLF & @CRLF & _
        '$i_Hotkey - $subtract == ' & $i_hotkey - $subtract & @CRLF & @CRLF & _
        'Chr(' & $i_Hotkey & ') = ' & Chr($i_HotKey) & @CRLF & @CRLF & _ 
        'Chr(' & $i_Hotkey & ' - ' & $subtract & ') = ' & Chr($i_HotKey - $subtract) & @CRLF & @CRLF & _ 
        'Chr(' & $i_HotkeyNew & ') = ' & Chr($i_HotKeyNew) & @CRLF & @CRLF & _ 
        'Hotkeyset string == ' & $hotkeyAssignment)
    
    Return $hotkeyAssignment
EndFunc

Func _ExcludeHotkey() 
    _SendMessage(_WinAPI_GetFocus(), $HKM_SETHOTKEY)
EndFunc
My Programs[list][*]Knight Media Player[*]Multiple Desktops[*]Daily Comics[*]Journal[/list]
Posted

Really...Really...Really....Great MsCreatoR! I love it! How does this work so immaculate? This looks so professional its...so real!

Posted
  Quote

I would suggest using a hotkey box instead of three checkboxes and a combolist, I have some code that has a great example.

As i mentioned, this box have issues. It's not supporting none ANSI characters, and some special characters can not be used.

 

  Reveal hidden contents

 

 

AutoIt is simple, subtle, elegant. © AutoIt Team

Posted

thank you MsCreatoR,

for all good job (and nice www resource).

Is possible to you to isolate only 'selection capture' in a 'new' script ?

(for all newbie as me [want to learn]) :)

Thank you again for source.

M.

  • 1 month later...
Posted

i want to thank again to MsCreatoR.

You open a new way to do my job.

Can you isolate or give us example to have 'selection capture' feature only.

Find a tool that do a lot of thing like your Cropper But have Autoit sorce help us a lot.

Thank you to all

m.

Posted

Hi folks,

do you know the problem with blocked AutoIt script downloads? - I know it to well - our company's firewall and/or antivirus solution blocks most of the scripts I wanna download. :D

There is actually an easy workaround for that ... password protected archive files.

@MsCreator: could you please pw-protect this (and/or all your scripts in the future?) download and post the password on the download site?

I guess I'm not the only one with this problem, and with that workaround we could finally eliminate those annoying false positive warnings or blockings of the antivirus and firewall products.

I personally would highly appreciate it.

thx & greetz

Mojo

You can fool some of the people all of the time, and all of the people some of the time, but you can not fool all of the people all of the time. Abraham Lincoln - http://www.ae911truth.org/ - http://www.freedocumentaries.org/
Posted (edited)

Really nice work :D

Saves a lot of work for me (Cropping, uploading).

Maybe add a MsgBox confirming upload to imageshack?

Would be nice since I don't want to upload all images to imageshack.

Edited by monoceres

Broken link? PM me and I'll send you the file!

  • 2 weeks later...
Posted

Wow....

Very nice Prog.

But please can you implement an "auto screenshot" function?

And some other pichoster or an option to type in a custom http: adress?

Great Job

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...