Articles of Windows CE

在Linux中用于Windows CE的C ++开发

我如何在我的Linux Ubuntu上开发和编译命令行C ++程序,用于我的具有Windows CE 3.1(HPC 2000)的Jornada 720,类似于像Palm那样的编译器或类似gcc的编译器,以及开发和编译教程将是非常好的,请记住,我想build立命令行程序到Windows CE,在Windows CE的cmd下运行的程序。 谢谢!

常见的Windows应用程序开发工作stream程能否适用于WCE7?

特别是对于Windows Embedded Compact 7(带有x86 PC)。 在一个完美的场景中,我希望使用通用桌面应用程序开发工作stream程。 例如,从光盘“安装”提供的WCE7操作系统,启动操作系统,通过控制台应用程序复制到硬盘驱动器并执行控制台应用程序(运行一些简单的testing) – 例如我将在Windows 7桌面。 但是,在研究中,我发现了在WCE7上开发embedded式系统应用程序的通用工作stream程,包括但不限于:使用平台构build器创build操作系统映像,在设备上安装引导加载程序,连接到设备,加载定制的图像,并从闪存等运行图像(参考: 紧凑型7开始由Samuel Phung ) 以前的通用应用程序工作stream可以应用于WCE7吗? 如果是的话,怎么样? 如果没有,为什么? 我没有看到添加CAB文件的操作系统devise和如何安装到Windows CE 7图像的应用程序? 以及如何在Windows Embedded Compact 7上安装.exe文件? 但不知道他们的范围是否有助于完全回答这个更一般的devisetypes问题。 (本着前者的精神,我试图执行WCE7 ISO上提供的安装程序 – 但这似乎是将文件加载到硬盘上,在我制作的分区上,无法启动到操作系统。不是做我期待的,WCE7安装程序的目的是什么?如果我们从Visual Studio开始创build镜像,那么这个安装程序如何与第二种方法联系起来?) 任何正确的方向是非常感激的。

ARM在WinCE和Linux上的调用约定?

WinCE和Linux在ARM上使用相同的调用约定吗? 有什么区别? 到目前为止我find的文件没有很好的解释。 例如,在http://msdn.microsoft.com/en-us/library/ms864497.aspx上 ,它在一行上显示“Windows CE .NET编译器”,在下一行显示“ARM编译器”,在“CLARM “在底部,目前还不清楚它是指同一个编译器还是不同的编译器。 这是我迄今为止发现的… ARM调用序列规范 (WinCE) – 写得不好的文档 ARM到C调用约定 (Linux) – 非正式的解释 维基百科 – 没有指定操作系统,也没有说明如何处理结构,浮点或64位数字,并且没有说明在不适合寄存器的情况下放置额外参数的位置。 更新: ARM体系结构的过程调用标准 – 最后我find了一个全面的文档,但没有说明哪个操作系统遵循标准(或者这些操作系统可能施加什么样的变体或附加限制)。 我问的原因是我想尝试在WinCE中使用LLVM在运行时生成一些简单的代码,但它只是正式支持Linux。

移动电脑条码扫描器如何集成到系统中?

我们公司正在考虑使用手持式条形码扫描仪作为我们库存pipe理stream程的一部分,我也有一些关于如何将其与现有系统集成的技术问题。 为了澄清,我正在谈论手持式无线条形码扫描仪,它们的屏幕和键盘实际上是小型计算机。 那些通过802.11g连接到networking并实时与数据库交互的人。 我知道这是一个广泛的问题,有点依赖于设备,但互联网似乎缺乏关于这个问题的技术上的详细信息的良好来源。 在购买这些设备之前,软件开发人员需要了解的信息的种类,以确保在特定情况下实际工作。 我find了销售它们的地方和基本的销售表,但是我正在寻找的是关于这些设备如何实际编程以及如何与后端应用程序交谈的详细描述。 具体来说,你是用一个广泛使用的语言如C编程吗? 还是他们使用一些晦涩的专有语言? 是脚本还是编译? 您是否需要在台式电脑上安装特殊软件,将您的应用程序加载到扫描仪上? 他们中的很多人说他们正在运行Windows Mobile或Windows CE。 这是否意味着你需要一个Windows桌面机器来编程? 与他们互动? 还是可以从Linux桌面进行编程,并与Linux服务器进行交互? 他们如何实际与后端应用程序交谈? 它是否通过HTTP发送XML,例如? 从网页开发的背景来看,我正在想象这个枪运行着一个类似于javascript的“瘦客户端”软件,它使得通过http(通过wifi)向服务器发出类似AJAX的调用。 他们或他们可以这样工作吗? 我真正喜欢的是一个名为“编程你的第一个条形码扫描仪”的指南,教你如何逐步创build一个“hello world”程序。 这样的事情存在吗? 提前致谢!

WEC7中的MmGetPhysicalAddress的等效API

我将Windows 7networking驱动程序代码移植到WEC7。 我陷入了API MmGetPhysicalAddress。 在WEC7中,我没有find相应的API。 任何人都可以帮助进一步进行.. PNET_BUFFER os_buf = NET_BUFFER_LIST_FIRST_NB((PNET_BUFFER_LIST)skb->wb_os_buf); PMDL pmdl = NET_BUFFER_FIRST_MDL(os_buf); ULONG length = 0; int8_t *data = NULL; PHYSICAL_ADDRESS addr; NdisQueryMdl(pmdl, &data, &length, NormalPagePriority); addr = MmGetPhysicalAddress(data); skb->wb_mapped_paddr_lo[0] = addr.LowPart + NET_BUFFER_DATA_OFFSET(os_buf); 我怎样才能把上面的代码的最后一行移到WEC7? 谢谢。

如何使窗口不透明?

(99,99,99)我想使父窗口与RGB值不透明? 以前我的窗口是透明的,但现在我有要求使窗口不透明。 下面提到的是与我的父窗口有关的function: ATOM MyRegisterClass(HINSTANCE hInstance) { LogEntry(L"Entered in myRegisterClass Function"); WNDCLASS CLASS_NAME_ONE_SEG_APP; CLASS_NAME_ONE_SEG_APP.cbClsExtra = 0; CLASS_NAME_ONE_SEG_APP.cbWndExtra = 0; CLASS_NAME_ONE_SEG_APP.hbrBackground = 0; CLASS_NAME_ONE_SEG_APP.hCursor = 0; CLASS_NAME_ONE_SEG_APP.hIcon = 0; CLASS_NAME_ONE_SEG_APP.hInstance = hInstance; CLASS_NAME_ONE_SEG_APP.lpfnWndProc = (WNDPROC) WndProc; CLASS_NAME_ONE_SEG_APP.lpszClassName = className; CLASS_NAME_ONE_SEG_APP.lpszMenuName = 0; CLASS_NAME_ONE_SEG_APP.style = 0; LogEntry(L"Exiting from myRegisterClass Function"); return RegisterClass(&CLASS_NAME_ONE_SEG_APP); } 下面提到的是一个InitInstance函数,我正在创build父窗口。 handles.parent是我的父窗口。 bool WINAPI […]

如何通过.NET Compact Framework确定.dll文件的CPUtypes?

我需要能够查找本机的.dll文件的目标CPU的types。 当CPUtypes与运行我的应用程序的CPU相同时,我的应用程序将使用.dll文件执行一些操作。 我想用.Net Compact Framework来完成这个任务。

支持阿拉伯字符从右到左

我目前正在为在Windows CE 5.0之上运行.Net Compact Framework应用程序的产品添加阿拉伯语支持。 阿拉伯语支持已被添加到操作系统,并且.Net应用程序知道AR-sa语言环境。 用户界面元素的阿拉伯语翻译存储在资源文件中,根据我的同事正确的方法读取。 当应用程序运行时,它看起来像所有的字符反转,使得它看起来像操作系统或应用程序正在镜像它们以提供RTL支持。 当我们反转资源文件中的string时,它仍然显示相同。 有没有人有什么想法可能会出错,如果有任何解决scheme?

USB通讯 – Windows CE主机terminal到USB设备(打印机)

我正在开发一些代码从Windows CE5terminal,将数据发送到USB设备(在这种情况下的打印机)运行。 我有问题获得用于打开通信的端口的价值。 我曾尝试使用由驱动程序(USBport + GUID)在registry中写入的设备path以及其他许多变体。 我知道与设备通信应该只是“打开一个文件”来与设备在给定的内存地址进行通信。 我知道有现代的usb库,但这些将是没有用的这样一个旧的操作系统(我假设)。 我的总体目标是编写代码是VC ++,并使用JNI来包装用于Java应用程序(SE6)的代码。 有没有人可以举一个例子来说明“设备path”是什么样的? 或者如果还有其他东西我可以随意摆脱光线。 我注意到大多数现代USB库都有searchfunction,但如果我有设备path,我不相信searchfunction是必要的…. 目前我正在尝试让代码在任何操作系统上运行,并且一直在使用Windows 7才能正常工作。 以下是一些代码片段: const LPCTSTR portvalue = L“441ee000-4342-11d5-a184-00c04f60524d”; //定义了端口名称,即设备的读/写位置 int usbHandle = OpenUsb(portvalue); //打开文件/设备进行通信 / * ** * ** * * 这里是OpenUsb函数 ** * ** * ** * **** / __declspec(dllexport)int _cdecl OpenUsb(const LPCTSTR portName){ HANDLE activeUsbFileHandle = CreateFile(portName, //portname built in […]

在Windows CE手持设备上禁用键盘registry不起作用

我试图在操作Windows CE的手持设备上inputinput字段时立即禁用popup的自动键盘。 它通过将键值“TurnOffAutoDeploy”设置为“1”来工作。 我创build了这个regedit脚本: REGEDIT4 [HKEY_CURRENT_USER\ControlPanel\Sip] "TurnOffAutoDeploy"="1" 我将文件复制到“应用程序”文件夹中,以便自动加载我的脚本,这会在冷启动后更改密钥值。 问题:冷启动后,键盘在进入input栏后仍然popup。 我再次检查了registry,把密钥更改为“1”,就像我想的那样。 似乎不影响任何东西。 我尝试了很多其他的东西,比如改变“Disabled”和“AllowChange”。 不工作。 你有没有经历过这个? 我感谢您的帮助。 谢谢