每次总是第一次的时候对,以后调用的时候总是自动调原来的东西,没有更新。还有其他更好用的api吗?
Microsoft® eMbedded Visual C++ 4.0
http://download.microsoft.com/download/WindowsCENETPlatformBuilder/Install/4.0/NT5XP/EN-US/eVC4.exe
eMbedded Visual C++ 4.0 SP1 ENU
http://download.microsoft.com/download/WinCENET41PlatBuilder/SP/4.0/NT5XP/EN-US/eVC4SP1.exe
eMbedded Visual Tools 3.0
http://download.microsoft.com/download/9/d/2/9d2f6ee8-4c75-4749-86df-2dd5189e6081/evt2002web_min.exe
OK" 按钮隐掉
SHDoneButton(AfxGetMainWnd()->m_hWnd,SHDB_HIDE);
"X" 按钮隐掉
ModifyStyle(AfxGetMainWnd()->m_hWnd,WS_CAPTION,WS_MINIMIZEBOX,SWP_NOSIZE);
ftp://ftp.wy.hziee.edu.cn/winsoft
单步调试是完全可以的。
首先安装微软的同步软件在PC机上;其次在PC机上运行该同步软件的同时,在小机上运行\Windows\repllog.exe文件;如果同步成功,在PC机上会出现一个盘符(Mobile device)。在其中可以看到小机的文件。这样同步即完成。
在选择了该目标机后,在开始调试前会出现同步提示框。同步成功后即可单步调试;我是通过这样的方法来调试CE系统的,单步不成问题!
如果您是在硬件上运行您的程序,除了SDK外还需要装同步软件,一般是Microsoft ActiveSync。可以在微软的网站上下载到。
全球第一款中文Windows手机,dopod具有强大的功能:配备Intel SA-1110 CPU,主频为206MHz,运算能力相当于PII。内存采用32兆/64兆SDRAM,32兆/64兆闪存。配备SD卡接口,可以用SD卡实现存储扩容。显示屏规格为3.5" 240x320 pixels, 4096彩色反射式TFT。内置GSM/GPRS模块,分别支持900/1800 MHz的GSM和GPRS无线通信功能。在基本应用程序方面,dopod686类似其他采用Pocket PC操作系统的高端掌上电脑,具有Pocket Word、Pocket Excel、Pocket TV以及Windows Media Player等功能。支持中文连笔手写识别,并可以做到中英文混合识别。通过Microsoft ActiveSync可以与PC同步进行数据传输。也可以通过红外接口与笔记本、其他掌上设备以及手机进行数据交换。通过类似Outlook式的联系人功能管理移动电话、电子邮件、短信等通信功能,可以方便地进行短信群发等操作。传统PDA的各种功能在dopod中仅仅能算是最为基本的功能,其最大亮点在于其强大的多媒体功能,可以非常流畅地播放音频和视频文件。
1.好像没有其它方法,为什么不用__FILE__ 中取?
2.fopen,您可以加上全路径。
3.wince2.11没有用过,但我想是支持的。在CE帮助中,一般均说明此函数从那个版本开始支持,但fopen中却没有。
4.下面是CE帮助中的一段:
CWinApp::WriteProfileString
This method writes the specified string into the specified section of the .ini file in the application.
BOOL WriteProfileString(
LPCTSTR lpszSection,
LPCTSTR lpszEntry,
LPCTSTR lpszValue );
5.不知您所用的CE版本为多少。CE3.0不支持中文,如果您所用的是3.0,那一定是OEM商汉化了CE。可能只支持一种字体;最新版.Net支持中文,有多种字体供选择。
PC与掌上电脑的串口是不是一样,这很难说。因为嵌入式开发是针对不同硬件平台进行的!
有的掌上电脑用的是标准的RS232,有的不是。
您用EVT(EVC和EVB)写的串口操作程序,可以下载到开发板上进行测试。当然开发板上需有串口硬件。
Palm OS ROM
http://www.echoice.com.cn/download/download.asp?softwareID=132
Release configurations use the following macros:
RETAILMSG(cond, printf_exp). Conditionally displays the print message.
RETAILLED(cond, parms). Conditionally outputs WORD values to the LED.
ERRORMSG(cond, printf_exp). Prints "Error: File Line" before the print message.
To enable the debug macros, you must build a debug configuration. Debug configurations use the three retail macros listed above, as well as the following debug macros:
DEBUGMSG(cond, printf_exp). Conditionally displays the print message.
DEBUGLED(cond, parms). Conditionally outputs WORD values to the LED.
DEBUGCHK(expr). Asserts the expression. If expr is FALSE, the macro calls DEBUGBREAK.
DEBUGZONE(zone_id). Tests the mask bit in the current debug zone settings. You can use DEBUGZONE to turn debug zones on or off.
Declare Function TranslateMessage Lib "coredll.dll" (ByVal MSG As String) As Boolean
网上down到的,有关unicode的函数集:
Attribute VB_Name = "modUniCode"
Option Explicit
Public Function MemStringToLong(StringIn As String) As Long
On Error Resume Next
Dim hWorkVal As String
' Convert the String back to Long Integer.
' Converting back to Big Endian format.
Dim i As Long
For i = 4 To 1 Step -1
hWorkVal = hWorkVal & Hex(AscB(MidB(StringIn, i, 1)))
Next i
' Return Long Integer value.
MemStringToLong = CLng("&H" & hWorkVal)
End Function
Public Function LongToMemoryString(ByVal lInputValue As Long) As String
Dim hWorkVal As String
Dim n As Long
Dim i As Long
' Convert to HEX value.
hWorkVal = Hex(lInputValue)
' Check to see if it is not zero.
If hWorkVal <> "0" Then
' Convert to memory storage format (Little Endian).
' For example, 0000A411 would convert to 11A40000.
'
' Place leading zeros in 8 character sequence to
' maintain consistent character count
n = Len(hWorkVal)
If n < 8 Then
hWorkVal = String(8 - n, "0") & hWorkVal
End If
'
' Use ChrB to rebuild Bytes.
For i = 7 To 1 Step -2
LongToMemoryString = LongToMemoryString & _
ChrB(CInt("&H" & Mid(hWorkVal, i, 2)))
Next i
Else
' Just return zeros.
' Use ChrB to build Bytes.
LongToMemoryString = ChrB(CInt("&H00"))
LongToMemoryString = LongToMemoryString & ChrB(CInt("&H00"))
LongToMemoryString = LongToMemoryString & ChrB(CInt("&H00"))
LongToMemoryString = LongToMemoryString & ChrB(CInt("&H00"))
End If
End Function
在EVC3.0下怎样使编出来的窗口最大化(占满所有屏幕),并能够将开始菜单条挡住?
BOOL SHFullScreen(
HWND hwndRequester,
DWORD dwState);
注意包含Aygshell.h
用shfullscreen产生全屏窗口,用showwindow隐藏任务条,用movewindow设置窗口大小为全屏。
代码如下:
#define MENU_HEIGHT 26
RECT rc;
//get window size
GetWindowRect(hWnd, &rc);
SHFullScreen(hWnd, SHFS_HIDETASKBAR | SHFS_HIDESIPBUTTON);
ShowWindow(hwndCB, SW_HIDE);
MoveWindow(hWnd,
rc.left,
rc.top-MENU_HEIGHT,
rc.right,
rc.bottom+MENU_HEIGHT,
TRUE);
Windows CE 3.0 supports the standard Winsock 1.1 functions.except the asychronous functions.
eVC4:
http://msdn.microsoft.com/library/default.asp?url=http://www.embeded.cn/nhp/Default.asp?contentid=28000437
Tools(For PPC2002):
http://www.microsoft.com/mobile/developer/downloads/default.asp
OR: http://www.microsoft.com/mobile/developer/default.asp
CEF:
http://msdn.microsoft.com/downloads/default.asp?url=http://www.embeded.cn/downloads/sample.asp?url=http://www.embeded.cn/msdn-files/027/001/926/msdncompositedoc.xml
目前大的GIS厂商,如MapInfo和ArcInfo对Paml支持太弱了,我咨询了这两家公司,都说还没有这方面的产品,WinCE下的产品倒是到了应用层次。
国外不少公司有开发出来的产品,比如www.GeoDiscovery.com,但是不提供二次开发接口。不知道大虾们是如何选择这方面的产品的。
电子地图:ArcInfo和MapInfo有全系列的开发包。绝对支持VS。
你打电话向ArcInfo中国代理,好像是富融科技,要一个开发包,当然是试用性质的。或者向MapInfo公司中国代理,是方正,咨询一下开发事宜。 |