皮皮网

【扫码共享设备开发源码】【clickhouse的源码】【wii源码设计】wsclient源码

来源:镇江广源码头 时间:2024-11-23 05:37:23

1.wsclientԴ?源码?
2.求一个控制摄像头小程序的源码,要求VC下编译运行
3.用C语言画一个哆啦A梦_附源码

wsclient源码

wsclientԴ?源码?

       呵呵,一年半前我和你一样,源码也处于这个状态,源码如果你做windows的源码扫码共享设备开发源码程序设计的话,编程像windows这样的源码clickhouse的源码窗口化的软件,你必须接触VS,源码旗下的源码VC++或VC#,你学完c和c++先接触VC++的源码MFC较为容易,使用MFC APP向导可以直接生成你所说的源码windows这样窗口程序,刚开始你是源码不知道如何生成的,为此你需要边学windows程序设计,源码建议使用《windows程序设计》,源码wii源码设计里面介绍了一个基本窗体生成的源码原理和步骤。如果你要学VC#,源码那你得先学C#,离做一个windows这样窗口程序比较远,脚本内核源码而且也不知道它生成的原理,当然既然c和c++学的不错的话,c#入门也不难。

       如下是低位反转源码一个窗体生成的windows源码:

       /*--------------------------------------

       CLOCK.C -- Analog Clock Program

       (c) Charles Petzold, 

       --------------------------------------*/

       #include <windows.h>

       #include <math.h>

       LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ;

       int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,

                           PSTR szCmdLine, int iCmdShow)

       {

        static TCHAR szAppName[] = TEXT ("Clock") ;

        HWND         hwnd;

        MSG          msg;

        WNDCLASS     wndclass ;

       

        wndclass.style         = CS_HREDRAW | CS_VREDRAW ;

        wndclass.lpfnWndProc   = WndProc ;

        wndclass.cbClsExtra    = 0 ;

        wndclass.cbWndExtra    = 0 ;

        wndclass.hInstance     = hInstance ;

        wndclass.hIcon         = NULL ;

        wndclass.hCursor       = LoadCursor (NULL, IDC_ARROW) ;

        wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH) ;

        wndclass.lpszMenuName  = NULL ;

        wndclass.lpszClassName = szAppName ;

       

        if (!RegisterClass (&wndclass))

        {

        MessageBox (NULL, TEXT ("Program requires Windows NT!"), 

        szAppName, MB_ICONERROR) ;

        return 0 ;

        }

       

        hwnd = CreateWindow (szAppName, TEXT ("GDI Test"),

        WS_OVERLAPPEDWINDOW,

        CW_USEDEFAULT, CW_USEDEFAULT,

        CW_USEDEFAULT, CW_USEDEFAULT,

        NULL, NULL, hInstance, NULL) ;

       

        ShowWindow (hwnd, iCmdShow) ;

        UpdateWindow (hwnd) ;

       

        while (GetMessage (&msg, NULL, 0, 0))

        {

        TranslateMessage (&msg) ;

        DispatchMessage (&msg) ;

        }

        return msg.wParam ;

       }

       LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)

       {

        static HDC hdc;

        static PAINTSTRUCT ps;

        static COLORREF color;

        static UINT ixClient,iyClient;

        static RECT rtWindow , rtClient;

        switch (message)

        {

        case WM_CREATE :

        GetWindowRect( hwnd , &rtWindow );

        GetClientRect( hwnd , &rtClient );

        return 0 ;

        case WM_NCPAINT:

        hdc = GetWindowDC( hwnd );

        color = GetPixel( hdc ,  , 5 );

        SetBkColor( hdc , color );

        SetTextColor( hdc , RGB(,0,0) );

        TextOut( hdc ,  ,  , 

        "Editor : CM" , strlen("Editor : CM") );

        ReleaseDC( hwnd , hdc );

        return 0;

        case WM_SIZE :

        ixClient = LOWORD( wParam );

        iyClient = HIWORD( wParam );

        return 0 ;

       

        case WM_TIMER :

        return 0 ;

       

        case WM_PAINT :

        hdc = BeginPaint (hwnd, &ps) ; 

        TextOut( hdc ,  ,  , "Editor : CM" , strlen("Editor : CM") );

        EndPaint (hwnd, &ps) ;

        return 0 ;

       

        case WM_DESTROY :

        PostQuitMessage(0);

        return 0 ;

        }

        return DefWindowProc (hwnd, message, wParam, lParam) ;

       }

求一个控制摄像头小程序的源码,要求VC下编译运行

       VC-摄像头控制SDK源码

       #include <windows.h>

       #include <stdio.h>

       #include <vfw.h>

       #pragma comment(lib,"vfw.lib")

       HWND ghWndCap ; //捕获窗的句柄

       CAPDRIVERCAPS gCapDriverCaps ; //视频驱动器的能力

       CAPSTATUS gCapStatus ; //捕获窗的状态

       char szCaptureFile[] = "MYCAP.AVI";

       char gachBuffer[];

       LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);

       LRESULT CALLBACK StatusCallbackProc(HWND hWnd,int nID,LPSTR lpStatusText)

       {

       if(!ghWndCap)return FALSE;//获得捕获窗的状态

       capGetStatus(ghWndCap,&gCapStatus,sizeof(CAPSTATUS));//更新捕获窗的大小

       SetWindowPos(ghWndCap,NULL,0,0,gCapStatus.uiImageWidth,gCapStatus.uiImageHeight,SWP_NOZORDER|SWP_NOMOVE);

       if(nID==0){ //清除旧的状态信息

       SetWindowText(ghWndCap,(LPSTR)"hello");

       return (LRESULT)TRUE;

       }//显示状态ID和状态文本

       wsprintf(gachBuffer,"Status# %d: %s",nID,lpStatusText);

       SetWindowText(ghWndCap,(LPSTR)gachBuffer);

       return (LRESULT)TRUE;

       }

       LRESULT CALLBACK ErrorCallbackProc(HWND hWnd,int nErrID,LPSTR lpErrorText)

       {

       if(!ghWndCap)return FALSE;

        if(nErrID==0)return TRUE;//清除旧的错误

       wsprintf(gachBuffer,"Error# %d",nErrID);//显示错误标识和文本

       MessageBox(hWnd, lpErrorText, gachBuffer,MB_OK | MB_ICONEXCLAMATION);

       return (LRESULT) TRUE;

       }

       LRESULT CALLBACK FrameCallbackProc(HWND hWnd,LPVIDEOHDR lpVHdr)

       {

       FILE *fp;

       fp=fopen("caram.dat","w");

       if(!ghWndCap)return FALSE;//假设fp为一打开的.dat文件指针

       fwrite(lpVHdr->lpData,1,lpVHdr->dwBufferLength,fp);

       return (LRESULT)TRUE;

       }

       int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,PSTR szCmdLine,int iCmdShow)

       {

       static TCHAR szAppName[]=TEXT("HelloWin");

       HWND hwnd;

       MSG msg;

       WNDCLASS wndclass;

       wndclass.style=CS_HREDRAW|CS_VREDRAW;

       wndclass.lpfnWndProc=WndProc;

       wndclass.cbClsExtra=0;

       wndclass.cbWndExtra=0;

       wndclass.hInstance=hInstance;

       wndclass.hIcon=LoadIcon(NULL,IDI_APPLICATION);

       wndclass.hCursor=LoadCursor(NULL,IDC_ARROW);

       wndclass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);

       wndclass.lpszMenuName=NULL;

       wndclass.lpszClassName=szAppName;

       if(!RegisterClass(&wndclass))

       {

       MessageBox(NULL,TEXT("This program requires WindowsNT!"),szAppName,MB_ICONERROR);

       return 0;

       }

       hwnd=CreateWindow(szAppName,TEXT("The Hello Program"),WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInstance,NULL);

       ShowWindow(hwnd,iCmdShow);

       UpdateWindow(hwnd);

       while(GetMessage(&msg,NULL,0,0))

       {

       TranslateMessage(&msg);

       DispatchMessage(&msg);

       }

       return msg.wParam;

       }

       LRESULT CALLBACK WndProc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam)

       {

       HDC hdc;

       PAINTSTRUCT ps;

       RECT rect;

       switch(message)

       {

       case WM_CREATE:

       {

       ghWndCap=capCreateCaptureWindow((LPSTR)"Capture Window",WS_CHILD|WS_VISIBLE,0,0,,,(HWND)hwnd,(int)0);

       capSetCallbackOnError(ghWndCap,(FARPROC)ErrorCallbackProc);

       capSetCallbackOnStatus(ghWndCap,(FARPROC)StatusCallbackProc);

       capSetCallbackOnFrame(ghWndCap,(FARPROC)FrameCallbackProc);

       capDriverConnect(ghWndCap,0); // 将捕获窗同驱动器连接

       //获得驱动器的能力,相关的信息放在结构变量gCapDriverCaps中

       capDriverGetCaps(ghWndCap,&gCapDriverCaps,sizeof(CAPDRIVERCAPS));

       capPreviewRate(ghWndCap, ); // 设置Preview模式的显示速率

       capPreview(ghWndCap, TRUE); //启动Preview模式

       if(gCapDriverCaps.fHasOverlay) //检查驱动器是否有叠加能力

       capOverlay(ghWndCap,TRUE); //启动Overlay模式

       if(gCapDriverCaps.fHasDlgVideoSource)capDlgVideoSource(ghWndCap); //Video source 对话框

       if(gCapDriverCaps.fHasDlgVideoFormat)capDlgVideoFormat(ghWndCap); // Video format 对话框

       if(gCapDriverCaps.fHasDlgVideoDisplay)capDlgVideoDisplay(ghWndCap); // Video display 对话框

       capFileSetCaptureFile( ghWndCap, szCaptureFile); //指定捕获文件名

       capFileAlloc(ghWndCap, (L * L * 5)); //为捕获文件分配存储空间

       capCaptureSequence(ghWndCap); //开始捕获视频序列

       capGrabFrame(ghWndCap); //捕获单帧图像

       }

       return 0;

       case WM_PAINT:

       hdc=BeginPaint(hwnd,&ps);

       GetClientRect(hwnd,&rect);

       DrawText(hdc,TEXT("Hello,Windows!"),-1,&rect,DT_SINGLELINE|DT_CENTER|DT_VCENTER);

       EndPaint(hwnd,&ps);

       return 0;

       case WM_DESTROY:

       {

       capSetCallbackOnStatus(ghWndCap,NULL);

       capSetCallbackOnError(ghWndCap,NULL);

       capSetCallbackOnFrame(ghWndCap,NULL);

       capCaptureAbort(ghWndCap);//停止捕获

       capDriverDisconnect(ghWndCap); //将捕获窗同驱动器断开

       PostQuitMessage(0);

       }

       return 0;

       }

       return DefWindowProc(hwnd,message,wParam,lParam);

       }

用C语言画一个哆啦A梦_附源码

       // 通过C语言与Windows API,成功绘制出哆啦A梦的图像,并附上源代码示例。

       以下是用于实现这一目标的代码:

       c

       #include

       LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);

       int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow) {

        static TCHAR szAppName[] = TEXT("MyWindows");

        HWND hwnd;

        MSG msg;

        WNDCLASS wndclass;

        // 窗口风格设置

        wndclass.style = CS_HREDRAW | CS_VREDRAW;

        wndclass.lpfnWndProc = WndProc;

        wndclass.cbClsExtra = 0;

        wndclass.cbWndExtra = 0;

        wndclass.hInstance = hInstance;

        wndclass.hIcon = LoadIcon(NULL, IDI_APPLICATION);

        wndclass.hCursor = LoadCursor(NULL, IDC_ARROW);

        wndclass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);

        wndclass.lpszMenuName = NULL;

        wndclass.lpszClassName = szAppName;

        if (!RegisterClass(&wndclass)) {

        MessageBox(NULL, TEXT("这个程序需要在 Windows NT 才能执行!"), szAppName, MB_ICONERROR);

        return 0;

        }

        hwnd = CreateWindow(szAppName, TEXT("Windows"), WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, , , NULL, NULL, hInstance, NULL);

        ShowWindow(hwnd, iCmdShow);

        UpdateWindow(hwnd);

        while (GetMessage(&msg, NULL, 0, 0)) {

        TranslateMessage(&msg);

        DispatchMessage(&msg);

        }

        return msg.wParam;

       }

       LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) {

        HDC hdc;

        PAINTSTRUCT ps;

        RECT rect;

        HPEN hBlackPen, hOldPen, hWhite2Pen;

        HBRUSH hWhiteBrush, hOldBrush, hBlackBrush, hRedBrush, hYellowBrush;

        static HBRUSH hBlueBrush, blue_brush, green_brush;

        static HPEN hBlue3Pen, blue_pen, green_pen;

        POINT pxRightHand[4], pxiLeftHand[4];

        int xCursor, yCursor;

        POINT point;

        switch (message) {

        case WM_PAINT:

        hdc = BeginPaint(hwnd, &ps);

        GetClientRect(hwnd, &rect);

        // 在窗口上写字

        Rectangle(hdc, rect.right / 2 - , 5, rect.right / 2 - , );

        Rectangle(hdc, rect.right / 2 + , 5, rect.right / 2 + , );

        TextOut(hdc, rect.right/2 -, , L"画蓝色哆啦A梦", 7);

        TextOut(hdc, rect.right/2 + , , L"画绿色哆啦A梦", 7);

        // 绘制哆啦A梦各个部位

        // 绘制头部、脸、眼睛、瞳孔、鼻子、嘴巴、胡子、身体、肚子、项圈、铃铛、百宝袋、腿、脚掌、手臂与手掌等细节

        // 绘制哆啦A梦的整体结构与细节

        // 绘制哆啦A梦的各个部分

        // 结束绘制

        EndPaint(hwnd, &ps);

        break;

        // 其他消息处理

        // 更多消息处理逻辑

        }

        return 0;

       }