我们可以在VIsual Studio 2015 Professional中创建智能设备项目吗?

时间:2015-09-13 03:22:13

标签: windows visual-studio windows-ce

我很快就会获得VS 2015 Pro。我是否可以为Windows CE版本5和6创建智能设备项目。

2 个答案:

答案 0 :(得分:3)

不,你不能。

Windows Phone OS 7.0之前的Windows Phone版本的Visual Studio 2010 does not support移动应用程序开发。 2015年也不支持。

您必须使用Visual Studio 2008

Here's some download links,不要忘记服务包。 不同的视觉工作室版本共存很好,现在我安装了3个版本(2008年,2012年,2013年),到目前为止没有任何问题。

答案 1 :(得分:0)

在某些情况下可以。该博客详细介绍了如何使用Visual Studio 2012完成类似的工作:

http://geekswithblogs.net/WernerWillemsens/archive/2013/09/13/building-windows-ce-6-or-7-smart-device-application-with.aspx

http://geekswithblogs.net/WernerWillemsens/archive/2013/09/13/154016.aspx

引自网站:

  

接下来是将Visual Studio 2008的Windows CE 6 SDK(以下称为“ MyDevice6(x86)”)转换为Visual Studio 2012的新SDK(以下称为“ MyDevice6”)时必须遵循的详细步骤。尽管看起来可能要执行许多步骤,但我们只是将一些文件夹复制到一个新位置并编辑一些文件,以创建适用于Windows CE 6的此新Visual Studio 2012兼容SDK(同样适用于Windows CE 7 SDK):

     

第1步:属性表

     
      
  • 通过从C:\ Program Files \ MSBuild \ Microsoft.Cpp \ v4复制(并重命名)创建一个新的C:\ Program Files \ MSBuild \ Microsoft.Cpp \ v4.0 \ V110 \ Platforms \ MyDevice6文件夹。 0 \ V110 \ Platforms \ MyDevice8。
  •   
  • 将文件重命名为(“ MyDevice8”->“ MyDevice6”)      
        
    • C:\ Program Files \ MSBuild \ Microsoft.Cpp \ v4.0 \ V110 \ Platforms \ MyDevice6 \ Microsoft.Cpp.MyDevice6.Common.props
    •   
    • C:\ Program Files \ MSBuild \ Microsoft.Cpp \ v4.0 \ V110 \ Platforms \ MyDevice6 \ Microsoft.Cpp.MyDevice6.default.props
    •   
    • C:\ Program Files \ MSBuild \ Microsoft.Cpp \ v4.0 \ V110 \ Platforms \ MyDevice6 \ Microsoft.Cpp.MyDevice6.props
    •   
    • C:\ Program Files \ MSBuild \ Microsoft.Cpp \ v4.0 \ V110 \ Platforms \ MyDevice6 \ Microsoft.Cpp.MyDevice6.targets
    •   
    • C:\ Program Files \ MSBuild \ Microsoft.Cpp \ v4.0 \ V110 \ Platforms \ MyDevice6 \ PlatformToolsets \ wce600 \ Microsoft.Cpp.MyDevice6.wce600.props
    •   
    • C:\ Program Files \ MSBuild \ Microsoft.Cpp \ v4.0 \ V110 \ Platforms \ MyDevice6 \ PlatformToolsets \ wce600 \ Microsoft.Cpp.MyDevice6.wce600.targets
    •   
  •   
  • 打开对这些文件夹具有管理员权限(写访问权限)的文本编辑器(以管理员身份运行)
  •   
  • 浏览所有6个文件,然后将那些指向MyDevice8的文件重命名为MyDevice6,将CE800的名称重命名为wce600
  •   
     

第2步:注册表

     
      
  • 使用文本编辑器打开C:\ Program Files \ MSBuild \ Microsoft.Cpp \ v4.0 \ V110 \ Platforms \ MyDevice6 \ PlatformToolsets \ wce600 \ Microsoft.Cpp.MyDevice6.wce600.props
  •   
  • 查找$(注册表:HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows CE Tools \ SDKs \ MyDevice6)SDK \
  •   
     

这是对您希望用于编译Windows CE 6/7智能设备项目的系统上必须存在的注册表项的引用。 Visual Studio 2012使用此密钥来识别您的SDK(Windows CE平台配置)。使用Regedit.exe手动创建此密钥。您还将在那里找到“ MyDevice8” SDK密钥,以它为例。

     
      
  • 您需要使用(默认)REG_SZ数据“ C:\ Program Files \ Windows CE Tools \ SDKs \ MyDevice6 \”创建密钥HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows CE Tools \ SDKs \ MyDevice6
  •   
     

第3步:文件夹结构

     
      
  • 将Visual Studio 2008“ CE”文件夹从C:\ Program Files \ Microsoft Visual Studio 9.0 \ VC \ ce复制到C:\ Program Files \ Windows CE Tools \ SDKs \ MyDevice6 \ Sdk
  •   
  • 将“ Windows CE Tools”文件夹从C:\ Program Files \ Windows CE Tools \ wce600 \ MyDevice6(x86)复制到C:\ Program Files \ Windows CE Tools \ SDKs \ MyDevice6
  •   
     

您的文件夹结构应类似于:

Folder Structure

  

第4步:二进制工具文件夹

     
      
  • 使用文本编辑器打开C:\ Program Files \ MSBuild \ Microsoft.Cpp \ v4.0 \ V110 \ Platforms \ MyDevice6 \ PlatformToolsets \ wce600 \ Microsoft.Cpp.MyDevice6.wce600.props
  •   
  • 按以下方式修改标签(注意顺序)      
        
    • 从$(SdkRootPath)bin \ i386; $(SdkRootPath)bin \ i386 \ x86; $(VSInstallDir)Common7 \ Tools \ bin; $(VSInstallDir)Common7 \ tools; $(VSInstallDir)Common7 \ ide; $ { ProgramFiles)\ HTML帮助研讨会; $(MSBuildToolsPath32); $(FxCopDir); $(PATH); $(VCINSTALLDIR)\ bin;
    •   
    • 至$(SdkRootPath)bin \ x86_cex86; $(VSInstallDir)Common7 \ Tools \ bin; $(VSInstallDir)Common7 \ tools; $(VSInstallDir)Common7 \ ide; $(ProgramFiles)\ HTML Help Workshop; $(MSBuildToolsPath32 ); $(FxCopDir); $(PATH); $(VCINSTALLDIR)\ bin;
    •   
  •   
     

第5步:C ++包含标头文件夹

     
      
  • 使用文本编辑器打开C:\ Program Files \ MSBuild \ Microsoft.Cpp \ v4.0 \ V110 \ Platforms \ MyDevice6 \ PlatformToolsets \ wce600 \ Microsoft.Cpp.MyDevice6.wce600.props
  •   
  • 按以下方式修改标签(注意顺序)      
        
    • 从$(SdkRootPath)crt \ Include; $(SdkRootPath)crt \ Include \ sys; $(SdkRootPath)crt \ Include \ stl; $(SdkRootPath)atlmfc \ Include; $(SdkRootPath)Inc;
    •   
    • 至$(SdkRootPath)Include; $(SdkRootPath)wce600 \ Include \ x86; $(SdkRootPath)atlmfc \ Include;
    •   
  •   
     

第6步:C ++库文件夹

     
      
  • 使用文本编辑器打开C:\ Program Files \ MSBuild \ Microsoft.Cpp \ v4.0 \ V110 \ Platforms \ MyDevice6 \ PlatformToolsets \ wce600 \ Microsoft.Cpp.MyDevice6.wce600.props
  •   
  • 按以下方式修改标签(注意顺序)      
        
    • 从$(SdkRootPath)crt \ Lib \ x86; $(SdkRootPath)atlmfc \ lib \ x86; $(SdkRootPath)Lib \ x86 \ debug; $(SdkRootPath)Lib \ x86 \ retail;
    •   
    • 至$(SdkRootPath)wce600 \ Lib \ x86; $(SdkRootPath)atlmfc \ lib \ x86; $(SdkRootPath)Lib \ x86;
    •   
  •   
     

第7步:CE附加文件

     
      
  • 使用文本编辑器打开C:\ Program Files \ MSBuild \ Microsoft.Cpp \ v4.0 \ V110 \ Platforms \ MyDevice6 \ PlatformToolsets \ wce600 \ Microsoft.Cpp.MyDevice6.wce600.props
  •   
  • 将标签中的所有“ 110 ”文件重命名为“ 90 ”文件      
        
    • 示例:msvcr90d.dll | $(SdkRootPath)crt \ bin \ x86 \ | temp \ $(ProjectName)| 0; msvcp90d.dll | $(SdkRootPath)crt \ bin \ x86 \ | temp \ $(ProjectName) | 0;
    •   
  •   
     

第8步:链接器附加依赖项

     
      
  • 使用文本编辑器打开C:\ Program Files \ MSBuild \ Microsoft.Cpp \ v4.0 \ V110 \ Platforms \ MyDevice6 \ PlatformToolsets \ wce600 \ Microsoft.Cpp.MyDevice6.wce600.props
  •   
  • 部分中的自适应标记      
        
    • 来自coredll.lib;%(AdditionalDependencies)
    •   
    • 至coredll.lib; corelibc.lib; ole32.lib; oleaut32.lib; uuid.lib; commctrl.lib; atlosapis.lib;%(AdditionalDependencies)
    •   
  •   
     

第9步:编译器预处理程序定义

     
      
  • 使用文本编辑器打开C:\ Program Files \ MSBuild \ Microsoft.Cpp \ v4.0 \ V110 \ Platforms \ MyDevice6 \ PlatformToolsets \ wce600 \ Microsoft.Cpp.MyDevice6.wce600.props
  •   部分中的
  • Adapt 标签      
        
    • 来自UNDER_CE; WINCE; _WIN32_WCE = 0x800;%(PreprocessorDefinitions)
    •   
    • 致UNDER_CE; WINCE; _WIN32_WCE = 0x600;%(PreprocessorDefinitions)
    •   
  •   
  • 删除/ arch:IA32%(AdditionalOptions)
  •   
     

步骤10:避免链接器错误” LINK:致命错误LNK1104:无法打开文件“ OLDNAMES.lib”“

     
      
  • 将/NODEFAULTLIB:"oldnames.lib“%(AdditionalOptions)添加到该部分
  •   
     

这将告诉链接器忽略默认名称为“ oldnames.lib”的库,该库在Windows CE中没有用

     

Voila,如果您已经执行了前面的所有步骤,则将用于Visual Studio 2008的Windows CE 6 SDK转换为用于Visual Studio 2012的Windows CE 6 SDK。再次,这也适用于Windows CE7 SDK。

>