如何在wince控制面板增加一个响应指定程序的图标

Wince6.0下用代码修改桌面壁纸/给程序增加快捷方式 Wince6.0下用代码修改桌面壁纸(修改注册表,发消息通知系统刷新) 给程序增加快捷方式(添加桌面快捷方式以及start menu中添加快捷) 工程是VS2005. 直接看代码也方便。没几行 立即下载

这个比想像中的要麻烦有下面详细的8个步文件
1.首先在驱动文件夹,建立一个:"newcpl" 文件夹

2.建 "sources" 文件,内容如下
TARGETNAME=newcpl
SOURCES= /
connpnl.rc /
connpnl.cpp /
INCLUDES= /
$(_PROJECTROOT)/cesysgen/oak/inc /
CDEFINES=$(CDEFINES) -DBKLPNL_EXPORTS
CPL=1
DLLENTRY=DllEntry
TARGETTYPE=DYNLINK
TARGETLIBS= $(_COMMONSDKROOT)/lib/$(_CPUINDPATH)/coredll.lib /


3.有sources 当然少不了,"makefile",文件 这个参考驱动

4.找一个.ico图标,现在我用"remotenw_new.ico",放在同一目录
5.建一个 "newcpl.def" 文件,内容如下

       LIBRARY         BKLPNL

       EXPORTS
             CPlApplet
6.建一个"resource.h",内容如下
#define IDD_BKL                         101
#define IDC_BKLSLIDE                    1000
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NO_MFC                     1
#define _APS_NEXT_RESOURCE_VALUE        102
#define _APS_NEXT_COMMAND_VALUE         40001
#define _APS_NEXT_CONTROL_VALUE         1003
#define _APS_NEXT_SYMED_VALUE           101
#endif
#endif
#define IDI_REMOTENW              3000
#define IDS_TITLE                 6000
#define IDS_INFO                  6001
extern "C" BOOL APIENTRY VolumeDlgProc (HWND hDlg, UINT message, UINT wParam, LONG lParam);

7.建一个"connpnl.rc" .内容如下
#define APSTUDIO_READONLY_SYMBOLS
#include "resource.h"
#define APSTUDIO_HIDDEN_SYMBOLS
#include "windows.h"
#undef APSTUDIO_HIDDEN_SYMBOLS
#undef APSTUDIO_READONLY_SYMBOLS
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_CHS)
#ifdef _WIN32
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
#pragma code_page(936)
#endif //_WIN32
IDI_REMOTENW            ICON    DISCARDABLE     "remotenw_new.ico"
#ifdef APSTUDIO_INVOKED
1 TEXTINCLUDE DISCARDABLE
BEGIN
    "resrc1.h/0"
END

2 TEXTINCLUDE DISCARDABLE
BEGIN
    "#include ""resource.h""/r/n"
    "#define APSTUDIO_HIDDEN_SYMBOLS/r/n"
    "#include ""windows.h""/r/n"
    "#undef APSTUDIO_HIDDEN_SYMBOLS/r/n"
    "/0"
END

3 TEXTINCLUDE DISCARDABLE
BEGIN
    "/r/n"
    "/0"
END

#endif    // APSTUDIO_INVOKED
IDD_BKL DIALOG DISCARDABLE 0, 0, 187, 98
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "newcpl"//将是在控制面板看到的名字
FONT 10, "System"
BEGIN
    DEFPUSHBUTTON   "OK",IDOK,15,77,50,14
    PUSHBUTTON      "Cancel",IDCANCEL,114,77,50,14
    CONTROL         "Slider1",IDC_BKLSLIDE,"msctls_trackbar32",WS_TABSTOP,17,
                    34,152,15
END
#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO DISCARDABLE
BEGIN
    IDD_BKL, DIALOG
    BEGIN
        LEFTMARGIN, 7
        RIGHTMARGIN, 180
        TOPMARGIN, 7
        BOTTOMMARGIN, 91
    END
END
#endif    // APSTUDIO_INVOKED
STRINGTABLE DISCARDABLE
BEGIN
    IDS_TITLE               "newcpl" //名字2.没多大作用
    IDS_INFO                "Connects to other computers, networks, and the Internet"
END

#endif    // Chinese (P.R.C.) resources
#ifndef APSTUDIO_INVOKED
#endif    // not APSTUDIO_INVOKED

8.最后一个文件了"connpnl.cpp"
#include <windows.h>
#include <tchar.h>
#include <cpl.h>
#include "resource.h"
#define lengthof(exp) ((sizeof((exp)))/sizeof((*(exp))))
HMODULE g_hModule = NULL;
extern "C" BOOL WINAPI DllEntry(HANDLE hinstDLL, DWORD dwReason, LPVOID lpvReserved)
{
   switch (dwReason)
   {
      case DLL_PROCESS_ATTACH:
      {
        g_hModule = (HMODULE) hinstDLL;
      }
      break;

   }

   return TRUE;
}

extern "C" LONG CALLBACK CPlApplet(HWND hwndCPL, UINT message, LPARAM lParam1, LPARAM lParam2)
{
   switch (message)
   {
      case CPL_INIT:
      {
         return 1;
      }

      case CPL_GETCOUNT:
      {
         return 1; // Just connmc
      }

      case CPL_NEWINQUIRE:
      {
         ASSERT(0 == lParam1);
         ASSERT(lParam2);

         NEWCPLINFO * lpNewCplInfo = (NEWCPLINFO *) lParam2;
         if (lpNewCplInfo)
         {
            lpNewCplInfo->dwSize = sizeof(NEWCPLINFO);
            lpNewCplInfo->dwFlags = 0;
            lpNewCplInfo->dwHelpContext = 0;
            lpNewCplInfo->lData = IDI_REMOTENW;
            lpNewCplInfo->hIcon = LoadIcon(g_hModule, MAKEINTRESOURCE(IDI_REMOTENW));
            LoadString(g_hModule, IDS_TITLE, lpNewCplInfo->szName, lengthof(lpNewCplInfo->szName));
            LoadString(g_hModule, IDS_INFO, lpNewCplInfo->szInfo, lengthof(lpNewCplInfo->szInfo));
            _tcscpy(lpNewCplInfo->szHelpFile, _T(""));
            return 0;
         }
         return 1; // Failure
      }

      case CPL_DBLCLK:
      {
       
         PROCESS_INFORMATION pi = {0};
         if (CreateProcess(_T("//Windows//waveout.exe"), NULL, NULL, //指点执行的文件
                           NULL, FALSE, 0, NULL, NULL, NULL, &pi))
         {
            CloseHandle(pi.hThread);
            CloseHandle(pi.hProcess);
            return 0;
         }
         return 1;
      }

      case CPL_STOP:
      case CPL_EXIT:
      default:
      {
         return 0;
      }
   }

   return 1;
} // CPlApplet

编译后在 platform.bib 加入这个文件"newcpl.cpl"就可以了

WinCE开机自动运行程序设置 可以用来设置WinCE系统自动运行程序的小工具。目前只支持添加一个自启动。需要更复杂的设置,可以利用驱动调试助手小工具协助设置。 立即下载

相关推荐

WINCE下第三方软件添加进系统及桌面快捷方式重启不消失定制

WINCE下第三方软件添加进系统及桌面快捷方式重启不消失定制

如何在wince控制面板增加一个响应指定程序的图标——转载

如何在wince控制面板增加一个响应指定程序的图标2008-05-23 19:03这个比想像中的要麻烦有下面详细的8个步文件1.首先在驱动文件夹,建立一个:"newcpl" 文件夹2.建 "sources" 文件,内容如下TARGETNAME=newcplSOURCES= /connpnl.rc /connpnl.cpp /INCLUDES= /$(_PROJE

gooogleman#foxmail.com 1696

VisualStudio2022配置CGAL

vs2022和vs2017安装配置boost没什么区别,只需要注意boost的msvc得是14.3的,这玩意跟visualstudio版本挂钩的。压缩包解压,得到下面这两文件,然后把auxiliary这个文件挪到CGAL-5.6里面就行了。我用cgal读取一个stl模型,并输出相关信息(想可视化的话需要安装Qt,不想装Qt也可以装VTK)然后下载下面这两个压缩包。照着下面的截图填就完事了。

weixin_43850909的博客 1169

写了个VC++ MFC小工具,一键整理Resource.h文件,重新排序并去重复ID(★firecat推荐★)

一般MFC开发的时候,如果有些资源是从其他工程中移植到本工程的,而在资源移植的时候都要将对应的资源ID复制到本工程的resource.h文件中。此时不管你在不在本工程中添加资源ID,resource.h文件中的ID可能都有重复的,一般再添加资源ID后,肯定有重复的。此外,随着界面越来越多,各种控件对话框的ID都堆积在一起,令人看得闹心。 今天我自己整理了一个小工具,可以打开Resource.h文...

$firecat利白的代码足迹$ 3559

Lisflood

文献:基于SWMM和LISFLOOD-FP模型的居住区低影响开发模拟评价。问题:多个节点溢流同时,不行,待解决。目录下,cmd命令行。

警警的博客 2662

深信服上网行为管理设备登录方法、恢复出厂、恢复控制台密码

1.初识设备 1.1 设备外观 1.2 软件版本 2.如何登录设备 首次拿到AC/SG设备时,可以通过以下方法登录设备控制台 SANGFOR AC/SG设备,各网口默认的出厂IP为: eth0(LAN):10.251.251.251/24 , eth1(DMZ)10.252.252.252/24 1、使用一根交叉线连接设备和电脑 (1) 如果电脑连接的是设备的eth0口,需先在电脑上配...

✍千里之行,始于足下 ^,^ 5万+

XML解析器接口--C++版

Resource.h文件 /*Resource.h*/ //{{NO_DEPENDENCIES}} //Microsoft Visual C++ generated include file. //Used by XMLParseInterface.RC //新对象的下一组默认值 #ifdef APSTUDIO_INVOKED #ifndef APSTUDIO_READONLY

TCP/IP 3403

循环神经网络(RNN)

在之前学习了全连接神经网络(DNN)模型,网络结构都是从输入层到隐含层再到输出层,层与层之间是全连接或部分连接的,但每层之间的节点是无连接的。 一、神经网络基础 神经网络可以当做是能够拟合任意函数的黑盒子,只要训练数据足够,给定特定的x,就能得到希望的y,结构图如下: 将神经网络模型训练好之后,在输入层给定一个x,通过网络之后就能够在输出层得到特定的y,那么既然有了这么强大的模型,为什么还需要RNN(循环神经网络)呢? 二、为什么需要RNN(循环神经网络) 考虑这样一个问题,如果要预测句子的下一个单词是什么

小朱小朱绝不认输的博客 2万+

c语言resource files的作用,c – resource.h中的宏用于什么?

在visual studio中创建资源文件时,IDE会自动生成一个名为resource.h的头文件,其中包含以下文本://{{NO_DEPENDENCIES}}// Microsoft Visual C++ generated include file.// Used by BackupRestore.rc// Next default values for new objects//#ifdef...

weixin_39571179的博客 642

【Embabel Agent】生产级最佳实践与避坑指南

本文围绕架构师最关心的 8 大维度展开:测试策略(FakeOperationContext 实现 Action 级单元测试、Prompt 质量与敏感信息校验)、MCP 集成实战(STDIO/HTTP 双模式、自建 Server、Docker MCP 生态)、RAG 检索增强、OpenTelemetry 全链路可观测性与追踪、Docker/K8s 生产部署、API Key 管理与 @Tool 安全防护、模型选择/缓存/并行等性能优化,以及过度依赖 LLM、忽略错误处理等 8 大常见反模式避坑指南。

program哲学 306

uniapp - 实现免费OCR文字识别方案,用户上传图片后进行扫描识别获取图片上的文字,uniApp纯前端做图片OCR识别——无需服务器进行OCR识别插件(不需要依赖任何SDK或第三方API服务)

uniapp实现orc识别免费的插件识别不花钱,无需第三方OCR文字识别API,uniApp拍照或者选择图片免费识别,纯前端不需要服务器,Uniapp提取图片上的文字,本地ocr识别技术,uni-app图片OCR识别文本,uniapp有没有免费的ocr识别组件,uniapp前端实现文字识别,身份证识别,营业执照识别 (兼容APP、H5、小程序 不需要任何SDK)跨端无SDK方案:Uniapp实现OCR文字,离线OCR识别,uniapp tesseract.js实现文字识别,uniapp文字识别无需依赖sdk

🏆 前端领域优质创作者 4249

《Windows程序设计》读书笔十一 对话框

第十一章  对话框 基于模板的对话框,包含了弹出窗口,和子窗口控件,而且有一个窗口过程来处理对话框消息。 包括键盘和鼠标的输入。 称为 “对话框管理器”  和标准的Windows窗口消息处理略有不同。稍后能看到具体区别 许多消息不仅被对话框窗口过程处理,还会传递给你自己的程序中的某些函数。  称为对话框过程 对话框过程一般处理初始化自创控件以及子窗口传来的消息。不处理WM_

sesiria的博客 3971

115网页版VR模式终于能用了!电脑直接播放vr视频沉浸感满满 115vr播放 无需vr头盔播放vr视频 在线vr播放器 115网盘360度视频播放方法 115全景视频播放教程

油猴 + 脚本让你网页端直接开启 VR 模式支持 360 视频拖动视角,非常沉浸适合电脑设备直接用无需vr头盔也能轻松畅看vr视频,希望也能帮到你。如果你也被 115 的限制搞烦了,不妨试试这招。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 5711

详解WINCE的控制面板

曾经在我的一篇《控制面板的创建》中介绍过WinCE控制面板的结构,不过由于那篇文章其目的只在于控制面板如何调用EXE程序,故对控制面板也仅是泛泛而谈.不过在这篇文章中,我们将对WinCE的使用方法来个整体的详解. 1.控制面板的结构         控制面板其实也是个动态链接库,区别只在于后缀名为.cpl,以及对外接口为CPlApplet().         接口的原型为:

芝麻软件工作室的专栏 533

YOLOv12涨点改进 | 独家创新-注意力改进篇 | ECCV 2024 | YOLOv12引入AgentAttention代理注意力模块,兼顾 Softmax 和线性注意力优点,提高检测精度

🔥本文给大家介绍使用Agent Attention模块改进YOLOv12网络模型。其主要作用是通过引入高效的代理token来减少计算复杂度,同时保留全局上下文建模能力。相比传统的Softmax注意力,Agent Attention通过代理token聚合并广播信息,从而降低了模型在处理高分辨率图像时的计算负担,并显著提高了推理速度。其优势在于保持了目标检测中的全局信息处理能力,同时加速了生成过程,特别是在高分辨率场景下,可以提高检测精度、减少内存消耗,并提升处理速度。

Ai缝合怪、助力小伙伴高效发论文 155

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

详解WINCE的控制面板——转载

详解WINCE的控制面板发 布 时 间 : 2008-11-19    来 源 : 优快云Blog    作 者 : norains   浏 览 : //========================================================================//TITLE:// 详解WINCE的控制面板//AUTHOR:// norains

gooogleman#foxmail.com 1882

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

wince系统控制面板功能或设置怎么调用

1.控制面板的结构   控制面板其实也是个动态链接库,区别只在于后缀名为.cpl,以及对外接口为CPlApplet().   接口的原型为:   LONG CALLBACK CPlApplet(HWND hwndCPL,UINT message, LPARAM lParam1, LPARAM lParam2)   在接口函数中我们需要实现特定几个消息的响应,控制面板才能正常运作.为方便观察

JXES智能生态系统 1774

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

wince系统功能或设置怎么调用 转

1.控制面板的结构   控制面板其实也是个动态链接库,区别只在于后缀名为.cpl,以及对外接口为CPlApplet().   接口的原型为:   LONG CALLBACK CPlApplet(HWND hwndCPL,UINT message, LPARAM lParam1, LPARAM lParam2)   在接口函数中我们需要实现特定几个消息的响应,控制面板才能正常运作.为方便观察

足球中国的专栏 786

控制面板与系统调用

来自:http://topic.youkuaiyun.com/u/20111223/21/5b3d8c9f-04e8-41a2-881b-4473c000293a.html 1.控制面板的结构   控制面板其实也是个动态链接库,区别只在于后缀名为.cpl,以及对外接口为CPlApplet().   接口的原型为:   LONG CALLBACK CPlApplet(HWND hwndCPL,UINT

smart_qiang的专栏 1170
上一篇: 仅通过崩溃地址找出源代码的出错行
下一篇: CE下的电源管理---mobile
luixing67
博客等级 码龄19年 54粉丝 13原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值