WinCE的非MFC程序中使用CString

   经常在编译代码的时候,输出窗口提示如下:
1>stdafx.cpp
1>_CE_ACTIVEX was not defined because this Windows CE SDK does not have DCOM.
1> _CE_ACTIVEX could be caused to be defined by defining _CE_ALLOW_SINGLE_THREADED_OBJECTS_IN_MTA, but it is recommended that this be done only for single-threaded apps.
1>_ATL_NO_HOSTING was defined because _CE_ACTIVEX was not defined.

其实也不是什么大不了的提示,可以不用管他的!
    网上也找到许多解决此问题的方法。我发现在新建project的时候,如果加入了ATL的支持就会有这个提示。估计是我的SDK里面确实没有DCOM这个组件。
    当我将
    #include <atlbase.h>
    #include <atlstr.h>
这两个include去掉之后,警告没有了。但是编译的时候可能会出现:
error C2065: 'CString' : undeclared identifier
 
    这里有另外一个办法解决这个问题,就是在StdAfx.h文件中#define WINVER _WIN32_WCE之后加入:
     #define _CE_ALLOW_SINGLE_THREADED_OBJECTS_IN_MTA
然后在#include <windows.h>之前计入:
     #include <afx.h>
 
这样就可以用CString,又不会出现警告了。
 
顺便提一下,我写的一般都是控制台程序,不需要界面的。因此没有试过含界面的程序。
 
 
多多指点
 
<script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/buttonLite.js#style=-1&uuid=&pophcol=3&lang=zh"></script> <script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/bshareC0.js"></script>
阅读(548) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
评论热议
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值