关于某在WindowsMobile下今日插件使用WTL地问题.doc
-
资源ID:6675
资源大小:187.50KB
全文页数:11页
- 资源格式: DOC
下载积分:10金币
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
关于某在WindowsMobile下今日插件使用WTL地问题.doc
word关于在Windows Mobile下今日插件使用WTL的问题简介本文讲述在今日插件开发中整合WTL遇到的问题,问题已经解决,看解决局部。 问题最近一段时间都在开发今日插件(Today Plug-in)。开始把代码都写的差不多了,整合了Sqlite和WTL,关于Sqlite和WTL也可以参考之前写的文章。Windows Mobile下访问Sqlite的Native C+封装 Windows Mobile和Wince下的WTL(Windows Template Library)开发Windows Mobile 和 Wince 下的 WTL(Windows Template Library) 界面开发 最后测试的时候发现今日插件没有正确显示出来。一般来说一个部署成功的今日插件可以在配置里面显示。如如下图:Start->Settings->Today->Items我的插件名字叫做Jakes Today。 但是一旦我整合了WTL,插件就不能显示到Today Setting里面了。#include <atlbase.h>#if _ATL_VER = 0x900#define _SECURE_ATL 1#endif#include <atlstr.h>#define _WTL_NO_CSTRING#include <atlapp.h>在StdAfx.h参加WTL的头文件,如果仅仅参加ATL支持,是没有问题的,但是一旦参加#include <atlapp.h> 后今日插件就不能显示到Today Setting里面了。如如下图:今日插件Jakes Today消失了。我使用Dumpbin查看接口,发现接口与是否整合WTL无关。Copyright (C) Microsoft Corporation. All rights reserved.File Type: DLL Section contains the following exports for 00000000 characteristics 4AE64262 time date stamp Tue Oct 27 21:44:18 2009 0.00 version 240 ordinal base 2 number of functions 0 number of names ordinal hint RVA name 240 00002110 NONAME ?InitializeCustomItemYAPAUHWND_PAU_TODAYLISTITEMPAU1Z (struct HWND_ * _cdecl InitializeCustomItem(struct _TODAYLISTITEM *,struct HWND_ *) 241 00002344 NONAME ?CustomItemOptionsDlgProcYAJPAUHWND_IIJZ (long _cdecl CustomItemOptionsDlgProc(struct HWND_ *,unsigned int,unsigned int,long) Summary 1000 .data 1000 .pdata 5000 .rdata 2000 .reloc 1000 .rsrc 14000 .text同样我把WTL整合的代码去掉,只是加上Sqlite的整合后,也出现同样的问题。目前为止,我没有整合到任何第三方到今日插件中。Windows Mobile下访问Sqlite的Native C+封装 这个问题我查找了MSDN没有找到答案,发贴提问了也没有人回答。How to use WTL in today plug-in DLL 由于工期原因,我决定放弃原先的方案,直接使用Win32来完成这个今日插件。如果那位碰到并解决这个问题,请告知,在此先谢了。 PS:可能有曲线救国的方法,使用一个today host来调用DLL,因为这个host可以调用C#的DLL的,参考下面的。Creating a Pocket PC Today Screen Plug-in with the .NET pact FrameworkCreating Managed Today Screen Items 解决 经过Ray和UMU的帮助,找到了解决方法。问题是如果编译出来的DLL依赖于msvcr90d.dll的话,加载就失败了,我想可能是shell32不能成功加载msvcr90d.dll导致的。下面使用 Dumpbin /imports win32.dll 查看没有使用WTL的版本的DLL。File Type: DLL Section contains the following imports: 10010000 Import Address Table 1000F3C0 Import Name Table 0 time date stamp 0 Index of first forwarder reference Ordinal 40 Ordinal 56 1001000C Import Address Table 1000F3CC Import Name Table 0 time date stamp 0 Index of first forwarder reference Ordinal 725 Ordinal 884 Ordinal 874 Ordinal 873 Ordinal 730 Ordinal 263 Ordinal 916 Ordinal 262 Ordinal 2005 Ordinal 264 Ordinal 858 Ordinal 875 Ordinal 95 Ordinal 919 Ordinal 1047 Ordinal 267 Ordinal 266 Ordinal 258 Ordinal 246 Ordinal 691 Ordinal 868 Ordinal 692 Ordinal 684 Ordinal 497 Ordinal 876 Ordinal 250 Ordinal 261 Ordinal 911 Ordinal 903 Ordinal 921 Ordinal 910 Ordinal 260 Ordinal 248 Ordinal 945 Ordinal 923 Ordinal 924 Ordinal 935 Ordinal 90 Ordinal 912 Ordinal 897 Ordinal 63 Ordinal 931 Ordinal 895 Ordinal 918 Ordinal 2033 Ordinal 2027 Ordinal 2048 Ordinal 2053 Ordinal 2024 Ordinal 2046 Ordinal 1118 Ordinal 1122 Ordinal 1116 Ordinal 1113 Ordinal 1097 Ordinal 1025 Ordinal 23 Ordinal 1068 Ordinal 1094 Ordinal 2008 Ordinal 1551 Ordinal 1044 Ordinal 1095 Ordinal 1580 Ordinal 1572 Ordinal 1571 Ordinal 1575 Ordinal 1574 Ordinal 1065 Ordinal 87 Ordinal 1556 Ordinal 1046 Ordinal 1041 Ordinal 1018 Ordinal 1096 Ordinal 537 Ordinal 16 Ordinal 33 Ordinal 15 Ordinal 1492 Ordinal 520 Ordinal 3 Ordinal 4 Ordinal 5 Ordinal 11 Ordinal 171 Ordinal 75 Ordinal 1132 Ordinal 541 Ordinal 10 Ordinal 530 Ordinal 528 Ordinal 543 Ordinal 517 Ordinal 2 Ordinal 544 Ordinal 1876 Ordinal 36 Ordinal 1875 Ordinal 1570 Ordinal 1111 Ordinal 1100 Ordinal 496 Ordinal 12 Ordinal 34 Ordinal 35 Summary 1000 .data 1000 .pdata 3000 .rdata 1000 .reloc D000 .rsrc C000 .text 下面使用 Dumpbin /imports wtl.dll 查看没有整合WTL的版本的DLL。File Type: DLL Section contains the following imports: 1001A000 Import Address Table 10019AA8 Import Name Table 0 time date stamp 0 Index of first forwarder reference Ordinal 40 Ordinal 56 1001A00C Import Address Table 10019AB4 Import Name Table 0 time date stamp 0 Index of first forwarder reference Ordinal 725 Ordinal 884 Ordinal 874 Ordinal 873 Ordinal 730 Ordinal 263 Ordinal 916 Ordinal 262 Ordinal 2005 Ordinal 264 Ordinal 858 Ordinal 875 Ordinal 95 Ordinal 919 Ordinal 1047 Ordinal 267 Ordinal 266 Ordinal 258 Ordinal 246 Ordinal 691 Ordinal 868 Ordinal 692 Ordinal 684 Ordinal 497 Ordinal 876 Ordinal 250 Ordinal 261 Ordinal 911 Ordinal 903 Ordinal 921 Ordinal 910 Ordinal 260 Ordinal 248 Ordinal 945 Ordinal 923 Ordinal 924 Ordinal 935 Ordinal 90 Ordinal 912 Ordinal 897 Ordinal 63 Ordinal 931 Ordinal 895 Ordinal 918 Ordinal 2033 Ordinal 2027 Ordinal 2048 Ordinal 2053 Ordinal 2024 Ordinal 2046 Ordinal 1118 Ordinal 1122 Ordinal 1116 Ordinal 1113 Ordinal 1097 Ordinal 1025 Ordinal 23 Ordinal 1068 Ordinal 1094 Ordinal 2008 Ordinal 1551 Ordinal 1044 Ordinal 1095 Ordinal 1580 Ordinal 1572 Ordinal 1571 Ordinal 1575 Ordinal 1574 Ordinal 1065 Ordinal 87 Ordinal 1556 Ordinal 1046 Ordinal 1041 Ordinal 1018 Ordinal 1096 Ordinal 537 Ordinal 16 Ordinal 33 Ordinal 15 Ordinal 1492 Ordinal 520 Ordinal 3 Ordinal 4 Ordinal 5 Ordinal 11 Ordinal 171 Ordinal 75 Ordinal 1132 Ordinal 541 Ordinal 10 Ordinal 530 Ordinal 528 Ordinal 543 Ordinal 517 Ordinal 2 Ordinal 544 Ordinal 34 Ordinal 12 Ordinal 1876 Ordinal 36 Ordinal 1875 Ordinal 1177 Ordinal 553 Ordinal 1496 Ordinal 494 Ordinal 61 Ordinal 524 Ordinal 550 Ordinal 1043 Ordinal 542 Ordinal 549 Ordinal 516 Ordinal 548 Ordinal 230 Ordinal 1054 Ordinal 1570 Ordinal 1111 Ordinal 1100 Ordinal 496 Ordinal 35 1001A1F0 Import Address Table 10019C98 Import Name Table 0 time date stamp 0 Index of first forwarder reference 26 wcsncpy_s 1001A1F8 Import Address Table 10019CA0 Import Name Table 0 time date stamp 0 Index of first forwarder reference 1E ReadClassStm 3 CoCreateInstance 28 WriteClassStm Summary 1000 .data 1000 .pdata 5000 .rdata 2000 .reloc D000 .rsrc 14000 .text 发现WTL版本比Win32版本增加了对msvcr90d.dll和ole32.dll的依赖。如果要去掉这些依赖可以通过编译Release版本来解决。 11 / 11