home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.sberbank.sumy.ua
/
2014.11.ftp.sberbank.sumy.ua.tar
/
ftp.sberbank.sumy.ua
/
incoming
/
1
/
jpegdllv02.c
< prev
next >
Wrap
C/C++ Source or Header
|
2014-02-08
|
3KB
|
100 lines
#include <windows.h>
#include <tchar.h>
typedef void ( *JPEGTOBITMAP)( char*);
typedef void ( *JPGINTOBMPOUT)( char*, char*);
typedef HBITMAP ( *JPEGBMPHANDLE)( char*);
LRESULT CALLBACK MainWndProc(HWND, UINT, WPARAM, LPARAM);
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int nCmdShow)
{
WNDCLASSEX wc;
HWND hwnd;
MSG uMsg;
wc.cbSize = sizeof (WNDCLASSEX);
wc.lpszClassName = "WindowGraph3";
wc.lpfnWndProc = MainWndProc;
wc.style = CS_VREDRAW | CS_HREDRAW;
wc.hInstance = hInstance;
wc.hIcon = LoadIcon(hInstance, IDI_APPLICATION);
wc.hIconSm = wc.hIcon;
wc.hCursor = LoadCursor(NULL, IDC_ARROW);
wc.hbrBackground = (HBRUSH) (COLOR_WINDOW + 1);
wc.lpszMenuName = 0;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
if(!RegisterClassEx( &wc))
return 1;
hwnd = CreateWindowEx( 0, "WindowGraph3", "JTBknv02.dll",
WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT,
CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL,
hInstance, NULL);
if(!hwnd)
return 1;
ShowWindow( hwnd, SW_SHOWNORMAL);
UpdateWindow( hwnd);
while (GetMessage( &uMsg, NULL, 0, 0))
{
TranslateMessage( &uMsg);
DispatchMessage( &uMsg);
}
return uMsg.wParam;
}
LRESULT CALLBACK MainWndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
PAINTSTRUCT ps;
HDC hDC, hMemDC;
static HBITMAP hBmp;
static HINSTANCE hinstLib;
static JPEGBMPHANDLE JpegBmpHandle;
static JPEGTOBITMAP JpegToBitmap;
static JPGINTOBMPOUT JpgInToBmpOut;
switch(uMsg)
{
case WM_CREATE:
hinstLib = LoadLibrary("JTBknv02.dll");
JpegBmpHandle = (JPEGBMPHANDLE)GetProcAddress( hinstLib, "JpegBmpHandle");
JpegToBitmap = (JPEGTOBITMAP)GetProcAddress( hinstLib, "JpegToBitmap");
JpgInToBmpOut = (JPGINTOBMPOUT)GetProcAddress( hinstLib, "JpgInToBmpOut");
hBmp = JpegBmpHandle( "jpeg.jpg");
JpegToBitmap( "jpeg.jpg");
JpgInToBmpOut( "jpeg.jpg","bmp.bmp");
return 0;
case WM_PAINT:
hDC = BeginPaint( hwnd, &ps);
hMemDC = CreateCompatibleDC( hDC);
SelectObject( hMemDC, hBmp);
BitBlt( hDC, 0, 0, 400, 200, hMemDC, 0, 0, SRCCOPY);
DeleteDC(hMemDC);
EndPaint( hwnd, &ps);
return 0;
case WM_DESTROY:
PostQuitMessage( 0);
return 0;
}
return DefWindowProc(hwnd, uMsg, wParam, lParam);
}