<nobr id="zkazv"></nobr>

      午夜精品一区二区三区成人,中文字幕av一区二区,亚洲AVAV天堂AV在线网阿V,肥臀浪妇太爽了快点再快点,国产网友愉拍精品视频手机,国产精品无码a∨麻豆,久久中文字幕一区二区,a级国产乱理伦片在线观看al
      首頁 新聞 工控搜 論壇 廠商論壇 產品 方案 廠商 人才 文摘 下載 展覽
      中華工控網首頁
        P L C | 變頻器與傳動 | 傳感器 | 現場檢測儀表 | 工控軟件 | 人機界面 | 運動控制
        D C S | 工業以太網 | 現場總線 | 顯示調節儀表 | 數據采集 | 數傳測控 | 工業安全
        電 源 | 嵌入式系統 | PC based | 機柜箱體殼體 | 低壓電器 | 機器視覺
      WINCE下如何添加CPL應用程序
      深圳市盈鵬飛科技有限公司
      收藏本文     查看收藏

      2 創建Hello World應用工程

             打開wince OS Designe工程,點擊文件(F) -> 新建(N)-> Subproject添加子工程,工程類型設置為WCE ApplicationSubproject name命名為Helloworld

             點擊下一步(N),選擇A typical “Hello world” application,然后點擊完成(F)


      3 創建HelloCPL控制面板應用工程

      點擊文件(F) -> 新建(N)-> Subproject添加子工程,工程類型設置為WCE Dynamic-Link Library,工程名為HelloCPL

             然后點擊下一步(N),在Auto-generated subproject files頁面中選擇A Dll that exports some symbols

             這是工程面板中看起來如下:

             雙擊HelloCPL工程中Source files下的HelloCPL.cpp,將其中的內容替換如下:

             //

      // HelloCPL.cpp : Defines the entry point for the DLL

      //

       

      #include "stdafx.h"    // Auto-generated by wizard.

      #include "HelloCPL.h"  // Auto-generated by wizard.

      #include "resource.h"  // Auto-generated at compile time

       

      #include <tchar.h>     // General text functions.

      #include "cpl.h"       // Control Panel support.

      #define DEBUG

      // Returns the number of characters in an expression.

      #define lengthof(exp) ((sizeof((exp)))/sizeof((*(exp))))

       

      HMODULE g_hModule = NULL;   // Handle to the DLL.

       

      // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

      // Main entry point for the Control Panel DLL.

      // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

      extern "C" BOOL APIENTRY DllMain( HANDLE hModule,

                             DWORD  ul_reason_for_call,

                             LPVOID lpReserved )

      {

        switch (ul_reason_for_call)

        {

          case DLL_PROCESS_ATTACH:

          {

            g_hModule = (HMODULE) hModule;

          }

          case DLL_THREAD_ATTACH:

          case DLL_THREAD_DETACH:

          case DLL_PROCESS_DETACH:

             break;

          }

          return TRUE;

      }

       

      // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

      // The entry point to the Control Panel application.

      // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

      extern "C" HelloCPL_API LONG CALLBACK CPlApplet(HWND hwndCPL,

                        UINT message, LPARAM lParam1, LPARAM lParam2)

      {

        switch (message)

        {

          case CPL_INIT:

            // Perform global initializations, especially memory

            // allocations, here.

            // Return 1 for success or 0 for failure.

            // Control Panel does not load if failure is returned.

            return 1;

       

          case CPL_GETCOUNT:

            // The number of actions supported by this Control

            // Panel application.

            return 1;

       

          case CPL_NEWINQUIRE:

            // This message is sent once for each dialog box, as

            // determined by the value returned from CPL_GETCOUNT.

            // lParam1 is the 0-based index of the dialog box.

            // lParam2 is a pointer to the NEWCPLINFO structure.

          {

            ASSERT(0 == lParam1);

            ASSERT(lParam2);

       

            NEWCPLINFO* lpNewCplInfo = (NEWCPLINFO *) lParam2;

            if (lpNewCplInfo)

            {

               lpNewCplInfo->dwSize = sizeof(NEWCPLINFO);

               lpNewCplInfo->dwFlags = 0;

               lpNewCplInfo->dwHelpContext = 0;

               lpNewCplInfo->lData = IDI_HELLOWORLD;

       

               // The large icon for this application. Do not free this

               // HICON; it is freed by the Control Panel infrastructure.

               lpNewCplInfo->hIcon = LoadIcon(g_hModule,

                                        MAKEINTRESOURCE(IDI_HELLOWORLD));

       

                LoadString(g_hModule, IDS_APP_TITLE, lpNewCplInfo->szName,

                           lengthof(lpNewCplInfo->szName));

                LoadString(g_hModule, IDS_HELLO, lpNewCplInfo->szInfo,

                           lengthof(lpNewCplInfo->szInfo));

      //        LoadString(g_hModule, IDC_HelloWorld, lpNewCplInfo->szInfo,

      //                     lengthof(lpNewCplInfo->szInfo));

                _tcscpy(lpNewCplInfo->szHelpFile, _T(""));

                return 0;

            }

            return 1;  // Nonzero value means CPlApplet failed.

          }

       

          case CPL_DBLCLK:

          {

            // The user has double-clicked the icon for the

            // dialog box in lParam1 (zero-based).

            PROCESS_INFORMATION pi = {0};

            if (CreateProcess(_T("\\Windows\\HelloWorld.exe"), NULL, NULL,

                                   NULL, FALSE, 0, NULL, NULL, NULL, &pi))

            {

              CloseHandle(pi.hThread);

              CloseHandle(pi.hProcess);

              return 0;

            }

            return 1;     // CPlApplet failed.

          }

       

          case CPL_STOP:

            // Called once for each dialog box. Used for cleanup.

          case CPL_EXIT:

            // Called only once for the application. Used for cleanup.

          default:

            return 0;

        }

       

        return 1;  // CPlApplet failed.

        }  // CPlApplet

            &nbs, p;  本工程用到1個圖標資源文件IDI_HELLOWORLD2個字符串資源IDS_APP_TITLEIDS_HELLO


      4 向控制面板添加資源文件

             A右鍵點擊HelloCPL -> Source Files,選擇Add -> New Item,見下圖:

             點擊Add后,雙擊HelloCPL->source files->HelloCPL.rc,見下圖

            


      B右鍵點擊上圖中的HelloCPL.rc,選擇Add Resource,彈出下面的對話框,添加ICON

             并修改IconIDIDI_HELLOWORLD.

             C重復步驟B,添加String Table,并修改String Table中的內容如下:

       


      5編譯控制面板應用程序

      A右鍵點擊HelloCPL工程,選擇屬性,彈出如下窗口

      B選擇General標簽頁,在Custom Variable欄點擊 按鈕打開Custom Variable對話框。

       

      C點擊NEW打開Environment Variable窗口,Variable Name輸入CPLVariable Value輸入1。點擊OK關閉Environment Variable,再點擊OK關閉Custom Variables。這樣做的目的是強制工程輸出.cpl文件,而不是.dll文件。

      D點擊C/C++標簽頁,在Include Directories添加$(_PROJECTROOT)\cesysgen\oak\inc

             確認Additional MacroDefinitions設置為$(CDEFINES) -DHelloCPL_EXPORTS

             修改DLL Entry PointDllmain

            點擊OK關閉屬性設置對話框。

      E修改HelloCPL.bib,替換為如下內容

                                 MODULES
                                 HelloCPL.cpl $(_FLATRELEASEDIR)\HelloCPL.cpl           NK

      F右鍵點擊HelloCPL,然后Build即可生成對應的內核,燒錄到系統啟動后即可在控制面板中看到Hello Control Panel的圖標,雙擊后即可運行Helloworld.exe



       

      狀 態: 離線

      公司簡介
      產品目錄

      公司名稱: 深圳市盈鵬飛科技有限公司
      聯 系 人: 李希崗
      電  話: 0086-13602511395
      傳  真: 0755-82523175,82523176-819
      地  址: 深圳市福田區福明路40號,雷圳大廈12A06
      郵  編: 518033
      主  頁:
       
      該廠商相關技術文摘:
      Wince sqlite3移植
      EAC-C925開機畫面實現手冊
      英貝德推出單板機產品軟件升級解決方案(WinCE篇)
      EP9315電路設計要點
      Linux下創建和使用RamDisk的技巧
      英貝德科技移植PPP大揭秘:PPP撥號在ARM2410平臺上的移植
      AT91SAM9263在人機界面方面的應用
      詳解WinCE下USB Host驅動開發(2)
      詳解WinCE下USB Host驅動開發(1)
      WinCE驅動中設備中斷的處理
      Linux內核學習之BogoMIPS值的計算
      更多文摘...
      立即發送詢問信息在線聯系該技術文摘廠商:
      用戶名: 密碼: 免費注冊為中華工控網會員
      請留下您的有效聯系方式,以方便我們及時與您聯絡

      關于我們 | 聯系我們 | 廣告服務 | 本站動態 | 友情鏈接 | 法律聲明 | 不良信息舉報
      工控網客服熱線:0755-86369299
      版權所有 中華工控網 Copyright©2022 Gkong.com, All Rights Reserved

      主站蜘蛛池模板: 伊人久久大香线蕉AV网禁呦| 国内不卡的一区二区三区| 少妇激情av一区二区三区| 亚洲精品无码久久一线| 久久青草国产精品一区| 日韩在线视频一区二区三区| 狠狠做五月深爱婷婷天天综合 | 亚洲精品一区二区妖精| 欧美综合人人做人人爱| 亚洲中文久久久久久精品国产| 熟女系列丰满熟妇AV| 日韩中文字幕av有码| 亚洲国产欧美一区二区好看电影| 蜜桃视频在线免费观看一区二区| 久久99久久99精品免观看| 亚洲精品国男人在线视频| 亚洲国产精品日韩AV专区| 午夜福利看片在线观看| 色天天天综合网色天天| 免费无码又爽又刺激高潮虎虎视频| 国精偷拍一区二区三区| 欧美在线人视频在线观看| 国产一区二区三区AV在线无码观看| 日本黄色一区二区三区四区| 中国熟女仑乱hd| 久久精品夜夜夜夜夜久久| 色综合色综合色综合频道| 亚洲 一区二区 在线| 国产精品人人爽人人做我的可爱| 亚洲高清偷拍一区二区三区| 日韩精品成人一区二区三| 午夜成人性爽爽免费视频| L日韩欧美看国产日韩欧美| 国产一区二区三区色老头| 高清国产亚洲精品自在久久| 亚洲蜜臀av乱码久久| 色伦专区97中文字幕| 久久免费观看归女高潮特黄| 国产成人一区二区不卡| 在线看国产精品自拍内射| 亚洲国产综合一区二区精品|