| Uutiset | Koodikirjasto | Wiki | Keskustelut | FAQ | Info |
mIRC takephotoempty 21.03.02 17:23 dll tiedosto mirkkiin joka ottaa kuvan nettikameralla ja tallentaa tiedostoon
library mwebcam; uses SysUtils,Windows,Classes,Messages,graphics,jpeg; type TLoadInfo = packed record mVersion:DWORD; mHwnd:HWND; mKeep:Boolean; end; PLoadInfo = ^TLoadInfo; const dib_name='temp.bmp'; jpeg_name='temp.jpg'; quality = 100; WM_CAP_START = WM_USER; WM_CAP_DRIVER_CONNECT = WM_CAP_START + 10; WM_CAP_DRIVER_DISCONNECT = WM_CAP_START + 11; WM_CAP_SAVEDIB = WM_CAP_START + 25; WM_CAP_GRAB_FRAME = WM_CAP_START + 60; var h,hWndC : THandle; dib_filename:string; function capCreateCaptureWindowA(lpszWindowName : PCHAR; dwStyle : longint; x : integer; y : integer; nWidth : integer; nHeight : integer; ParentWin : HWND; nId : integer): HWND; STDCALL EXTERNAL 'AVICAP32.DLL'; function takephoto(mWnd:hWnd;aWnd:hWnd;Data:PChar;Parms:PChar;Show:Boolean; NoPause:Boolean):Integer;export;stdcall; var pic:TPicture; jpg:TJPEGImage; begin dib_filename:=dib_name; hWndC:=capCreateCaptureWindowA('Webcam',WS_VISIBLE,0,0,1,1,h,0); SendMessage(hWndC,WM_CAP_DRIVER_CONNECT,0,0); SendMessage(hWndC,WM_CAP_SAVEDIB,0,integer(dib_filename)); SendMessage(hWndC,WM_CAP_DRIVER_DISCONNECT,0,0); pic:=TPicture.Create; jpg:=TJPEGImage.Create; pic.LoadFromFile(dib_name); pic.Bitmap.Canvas.Brush.Style := bsSolid; pic.Bitmap.Canvas.Brush.Color := clBlack; pic.Bitmap.Canvas.Font.Color := clWhite; pic.Bitmap.Canvas.Font.Name := 'Lucida console'; pic.Bitmap.Canvas.TextOut(1,1,FormatDateTime('dd.mm.yyyy hh:mm', Now)); jpg.Assign (pic.Bitmap); pic.savetofile(dib_name); pic.Free; jpg.CompressionQuality := quality; jpg.SaveToFile (jpeg_name); jpg.Free; result:=3; end; function version(mWnd:hWnd;aWnd:hWnd;Data:PChar;Parms:PChar;Show:Boolean;NoPause:Boolean):Integer;export;stdcall; begin strcopy(data,'Webcam mIRC DLL by Hawku'); result:=3; end; exports takephoto,version; end. |
![]() Haku
|