screenshot in Win7

Started by bal, February 18, 2015, 09:11:36 AM

Previous topic - Next topic

bal

How to take screenshot in Win7?

xytroxon

#1
Two programs I have used are:



1: ConEmu: Press Win + H keys to save its  console display to a jpg file.

http://code.google.com/p/conemu-maximus5/">//http://code.google.com/p/conemu-maximus5/


QuoteConEmu-Maximus5 is a Windows console emulator with tabs, which presents multiple consoles and simple GUI applications as one customizable GUI window with various features.


2: FreeCpmmander: "Tool" menu has a screenshot option. (bmp png gif)

http://freecommander.com/en/summary/">//http://freecommander.com/en/summary/


QuoteFreeCommander is an easy-to-use alternative to the standard windows file manager. The program helps you with daily work in Windows. Here you can find all the necessary functions to manage your data.


Both programs are part of my newLISP Windows command line programming tool set ;>)



-- xytroxon
\"Many computers can print only capital letters, so we shall not use lowercase letters.\"

-- Let\'s Talk Lisp (c) 1976

bal

#2
I do not need to save the image to a file, I want to analyze it programmatically. Something similar to this:


typedef struct point {
    int x;
    int y;
} Point;

Point points[] = {
    { 1, 10 },
    { 20, 3 },
    { 640, 480 },
    { 0, 0 }
};

COLORREF colors[4];

HDC h = GetDC(NULL); // handle of desktop
for( int i = 0; i < 4; i++ ) {
    colors[i] = GetPixel(h, points[i].x, points[i].y);
}
ReleaseDC(h);

kosh

#3
Try translate to newLISP:


(import "user32" "GetDC")       ; HDC GetDC(HWND hWnd);
(import "user32" "ReleaseDC")   ; int ReleaseDC(HWND hWnd, HDC hDC);
(import "gdi32" "GetPixel")     ; COLORREF GetPixel(HDC hdc, int nXPos, int nYPos);

(define (get-pixel point)
  (letn ((h (GetDC 0))
         (color (GetPixel h (first point) (last point))))
    (ReleaseDC h)
    color))

(print (map get-pixel '((1 10)
                        (20 3)
                        (640 480)
                        (0 0))))
;;-> (0 4144700 14548991 0)

bal

#4
Wow, it looks so amazing and easy! :) So, may be I move some my number-crunchers to C-DLLs. ;) Thanks!