{"id":193,"date":"2014-11-12T07:35:00","date_gmt":"2014-11-12T07:35:00","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/vcblog\/2014\/11\/12\/c-tools-acquisition-for-windows-phone-and-store-development\/"},"modified":"2021-07-29T14:12:44","modified_gmt":"2021-07-29T14:12:44","slug":"c-tools-acquisition-for-windows-phone-and-store-development","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/cppblog\/c-tools-acquisition-for-windows-phone-and-store-development\/","title":{"rendered":"C++ Tools Acquisition for Windows Phone and Store Development"},"content":{"rendered":"<p style=\"background: white\"><span style=\"font-family: Segoe UI;font-size: 9pt\"><span style=\"color: #424242\">Through this blog post we wanted to inform you that C++ apps in Visual Studio 2015 Preview will be able to target Windows 8.1 Store and Phone development along with Windows 8.0 Phone development.&nbsp; Everything mentioned below is relevant only for Windows Store and Windows Phone apps. To provide this experience for the users <\/span>VS 2015 pulls in the latest versions of VS 2013 and VS 2012 C++ compiler tools, headers, libs, project settings and other tools to help target Windows 8.1 Store\/Phone or Windows 8.0 Phone respectively.<\/span><\/p>\n<h2>Installation<\/h2>\n<p><span style=\"font-family: Segoe UI;font-size: 9pt\">In Visual Studio 2015 Preview you will be able to target Windows 8.1 Phone and Store along with Windows 8.0 Phone development. To be able to do this using C++, please select the three components highlighted below in in <\/span>Figure 1: Install Screen<span style=\"font-family: Segoe UI;font-size: 9pt\">. Once you are done with the set up you will not only be able to create new projects but also open existing ones. <\/span><\/p>\n<p style=\"text-align: center\"><a href=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2014\/11\/1256.111214_0117_CToolsAcqui1.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2014\/11\/1256.111214_0117_CToolsAcqui1.png\" alt=\"Image 1256 111214 0117 CToolsAcqui1\" width=\"347\" height=\"447\" class=\"alignnone size-full wp-image-28500\" srcset=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2014\/11\/1256.111214_0117_CToolsAcqui1.png 347w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2014\/11\/1256.111214_0117_CToolsAcqui1-233x300.png 233w\" sizes=\"(max-width: 347px) 100vw, 347px\" \/><\/a><\/p>\n<p style=\"text-align: center\"><a href=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2014\/11\/7455.111214_0117_CToolsAcqui2.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2014\/11\/7455.111214_0117_CToolsAcqui2.png\" alt=\"Image 7455 111214 0117 CToolsAcqui2\" width=\"347\" height=\"27\" class=\"alignnone size-full wp-image-28503\" srcset=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2014\/11\/7455.111214_0117_CToolsAcqui2.png 347w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2014\/11\/7455.111214_0117_CToolsAcqui2-300x23.png 300w\" sizes=\"(max-width: 347px) 100vw, 347px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<h2>Caveats<\/h2>\n<p><span style=\"font-family: Segoe UI;font-size: 9pt\">Scenarios that are still being worked on and hence will not be functional in Visual Studio 2015 Preview are: <\/span><\/p>\n<h2>C++ store and phone unit testing<\/h2>\n<h3>Issue<\/h3>\n<p><span style=\"font-family: Segoe UI;font-size: 9pt\">Building new C++ Store, C++ Phone 8.1 Unit Test project on VS 2015 fails with cannot find header file cppunittest.h <\/span><\/p>\n<h2>IntelliSense for Windows Phone 8.0 projects<\/h2>\n<h3>Issue<\/h3>\n<p><span style=\"font-family: Segoe UI;font-size: 9pt\">For all Windows Phone 8.0 projects IntelliSense is not available. <\/span><\/p>\n<h2>Ability to use ATL as part of the Windows 8.0 Store and Windows 8.1 Store and Phone projects<\/h2>\n<h3>Issue<\/h3>\n<ul>\n<li>\n<div><span style=\"font-family: Segoe UI;font-size: 9pt\">When you try to build a project that uses ATL you will run into the following build issue <\/span><\/div>\n<p style=\"margin-left: 36pt\"><span style=\"font-family: Segoe UI;font-size: 9pt\"><span style=\"background-color: yellow\">error C1083: Cannot open include file: &#8216;atlbase.h&#8217;: No such file or directory<\/span> <\/span><\/p>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<h2>Ability to upgrade a Windows 8.0 Store project to Windows 8.1 Store project<\/h2>\n<h3>Issue<\/h3>\n<ul>\n<li>\n<div><span style=\"font-family: Segoe UI;font-size: 9pt\">When you try to build a project that is retargeted from Windows 8.0 Phone to Windows 8.1 Phone you will run into the following build issue <\/span><\/div>\n<p style=\"margin-left: 36pt\"><span style=\"font-family: Segoe UI;font-size: 9pt\"><span style=\"background-color: yellow\">fatal error C1083: Cannot open include file: &#8216;SDKDDKVer.h&#8217;: No such file or directory<\/span><\/span><\/p>\n<\/li>\n<\/ul>\n<h3>Work around<\/h3>\n<ul>\n<li><span style=\"font-family: Segoe UI;font-size: 9pt\">Open project properties and change platform toolset to v120 as in <\/span>Figure 2: Project Properties<span style=\"font-family: Segoe UI;font-size: 9pt\">. <\/span><\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p style=\"text-align: center\"><a href=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2014\/11\/4621.111214_0117_CToolsAcqui3.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2014\/11\/4621.111214_0117_CToolsAcqui3.png\" alt=\"Image 4621 111214 0117 CToolsAcqui3\" width=\"624\" height=\"209\" class=\"alignnone size-full wp-image-28502\" srcset=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2014\/11\/4621.111214_0117_CToolsAcqui3.png 624w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2014\/11\/4621.111214_0117_CToolsAcqui3-300x100.png 300w\" sizes=\"(max-width: 624px) 100vw, 624px\" \/><\/a><\/p>\n<p style=\"text-align: center\"><span style=\"color: #1f497d\"><em><span style=\"font-size: 9pt\">Figure 2: Project Properties<\/span><\/em><\/span><\/p>\n<ul>\n<li><span style=\"font-family: Segoe UI;font-size: 9pt\">Right click on the project, select <strong>Unload Project<\/strong>. <\/span><\/li>\n<li><span style=\"font-family: Segoe UI;font-size: 9pt\">Right click on project and select <strong>Edit.<\/strong> <\/span><\/li>\n<li><span style=\"font-size: 9pt\"><span style=\"font-family: Segoe UI\">Notice that <span style=\"background-color: white\">&lt;AppContainerApplication&gt;true&lt;\/AppContainerApplication&gt;<\/span> is not in <\/span><span style=\"color: blue;font-family: Consolas\"><span style=\"background-color: white\">&lt;<span style=\"color: #a31515\">PropertyGroup<span style=\"color: blue\"> <span style=\"color: red\">Label<span style=\"color: blue\">=<span style=\"color: black\">&#8220;<span style=\"color: blue\">Globals<span style=\"color: black\">&#8220;<span style=\"color: blue\">&gt;<\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span>. <\/span><\/span><\/li>\n<li><span style=\"font-size: 9pt\"><span style=\"font-family: Segoe UI\">Add &lt;<span style=\"background-color: white\">AppContainerApplication&gt;true&lt;\/AppContainerApplication&gt;<\/span> to <\/span><span style=\"color: blue;font-family: Consolas\"><span style=\"background-color: white\">&lt;<span style=\"color: #a31515\">PropertyGroup<span style=\"color: blue\"> <span style=\"color: red\">Label<span style=\"color: blue\">=<span style=\"color: black\">&#8220;<span style=\"color: blue\">Globals<span style=\"color: black\">&#8220;<span style=\"color: blue\">&gt;<\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span> <\/span><span style=\"font-family: Segoe UI\">and remove all other instances of<\/span><span style=\"font-family: Segoe UI\">&lt;<span style=\"background-color: white\">AppContainerApplication&gt;true&lt;\/AppContainerApplication&gt;<\/span><\/span><span style=\"color: blue;font-family: Consolas\">.<\/span><\/span><\/li>\n<li><span style=\"font-family: Segoe UI;font-size: 9pt\">This will change the Windows Store App Support to <strong>Yes<\/strong>. <\/span><\/li>\n<li><span style=\"font-family: Segoe UI;font-size: 9pt\">Save, and reload the project <\/span><\/li>\n<\/ul>\n<h2>FAQ<\/h2>\n<h2>What happens if I already have VS 2013?<\/h2>\n<p><span style=\"font-family: Segoe UI;font-size: 9pt\">If you already have VS 2013 installed, VS 2015 will not install any VS 2013 and VS 2012 packages that are included for Windows 8.1 Store\/Phone or Windows 8.0 Phone development. It is recommended that a minimum of VS 2013 Update 2 is installed on your computer to be able to develop for Windows 8.1 Phone\/Store or Windows 8.0 Phone in VS 2015 preview. Once VS 2013 has been patched with Update 2 or later, Windows 8.1 Store\/Phone or Windows 8.0 Phone development can be done through VS 2013 or VS 2015 Preview. <\/span><\/p>\n<p><span style=\"font-family: Segoe UI;font-size: 9pt\">Also uninstall of VS 2015 should leave any older versions of Visual Studio that are installed on the computer intact. <\/span><\/p>\n<h2>Can I install VS 2013 after VS 2015 preview?<\/h2>\n<p><span style=\"font-family: Segoe UI;font-size: 9pt\">If you were to install older versions of Visual Studio on a computer with VS 2015 Preview, we recommend you install the latest update of that major release version. <\/span><\/p>\n<h2>What if I installed without this option and now want to do Windows 8.1\/8.0 Store\/Phone development?<\/h2>\n<p><span style=\"font-family: Segoe UI;font-size: 9pt\">If you have installed VS 2015 Preview without the options in <\/span>Figure 1: Install Screen<span style=\"font-family: Segoe UI;font-size: 9pt\"> selected, you will still be able to create new projects or open existing projects and can edit them. However you will not be able to build them. Building will result in <\/span>Figure 3: Build Errors<span style=\"font-family: Segoe UI;font-size: 9pt\">. <\/span><\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2014\/11\/2577.111214_0117_CToolsAcqui4.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2014\/11\/2577.111214_0117_CToolsAcqui4.png\" alt=\"Image 2577 111214 0117 CToolsAcqui4\" width=\"655\" height=\"112\" class=\"alignnone size-full wp-image-28501\" srcset=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2014\/11\/2577.111214_0117_CToolsAcqui4.png 655w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2014\/11\/2577.111214_0117_CToolsAcqui4-300x51.png 300w\" sizes=\"(max-width: 655px) 100vw, 655px\" \/><\/a><\/p>\n<p style=\"text-align: center\"><span style=\"color: #1f497d\"><em><span style=\"font-size: 9pt\">Figure 3: Build Errors<\/span><\/em><\/span><\/p>\n<p><span style=\"font-family: Segoe UI;font-size: 9pt\">When you run into these errors you can re-launch the set up through Programs and Features and select the above mentioned three options. <\/span><\/p>\n<h2>Do I need the emulators for phone installed?<\/h2>\n<p><span style=\"font-family: Segoe UI;font-size: 9pt\">If you are planning on doing Windows 8.1 Store only development you will not need to select the <strong>Windows Phone 8.1 Emulators<\/strong> option. <\/span><\/p>\n<h2>Will I be able to get new C++ features?<\/h2>\n<p><span style=\"font-family: Segoe UI;font-size: 9pt\">All the new C++ compiler and linker features will not be available in this release for Windows 8.1 Phone, Store and Windows 8.0 Phone development. As mentioned above, we will be pulling in the older versions of compilers, headers, libs and tools etc., to be able to target Windows 8.1 Store and Phone development and Windows 8.0 Phone development. However the new C++ compiler and linker features <strong><em>are available<\/em><\/strong> for desktop development for all supported platforms. <\/span><\/p>\n<h2>Summary<\/h2>\n<p style=\"background: white\"><span style=\"font-family: Segoe UI\"><span style=\"color: #424242;font-size: 9pt\">Just like in Visual Studio 2013 when we provided the ability to target Windows 8.0 phone and store development, this work is enabling the same through Visual Studio 2015 however for Windows 8.1 phone and store along with Windows 8.0 phone. Thank you for reading through this blog post and please let us know your feedback and bugs that you find while using this scenario.&nbsp; Feel free to post your comments on this post or write an email directly to me at vsanni@microsoft.com <\/span> <\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Through this blog post we wanted to inform you that C++ apps in Visual Studio 2015 Preview will be able to target Windows 8.1 Store and Phone development along with Windows 8.0 Phone development.&nbsp; Everything mentioned below is relevant only for Windows Store and Windows Phone apps. To provide this experience for the users VS [&hellip;]<\/p>\n","protected":false},"author":298,"featured_media":35994,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[8],"class_list":["post-193","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cplusplus","tag-announcement"],"acf":[],"blog_post_summary":"<p>Through this blog post we wanted to inform you that C++ apps in Visual Studio 2015 Preview will be able to target Windows 8.1 Store and Phone development along with Windows 8.0 Phone development.&nbsp; Everything mentioned below is relevant only for Windows Store and Windows Phone apps. To provide this experience for the users VS [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts\/193","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/users\/298"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/comments?post=193"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts\/193\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/media\/35994"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/media?parent=193"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/categories?post=193"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/tags?post=193"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}