appcelerator-archive / windowslib

This is a library of utilities for dealing programmatically with Windows Phone applications, used namely for tools like Titanium.
http://www.appcelerator.com
Other
4 stars 10 forks source link

Some installs of Visual Studio 2013 don't include the vcvarsphoneall.bat #9

Open sgtcoolguy opened 9 years ago

sgtcoolguy commented 9 years ago

See https://github.com/appcelerator/windowslib/blob/master/lib/visualstudio.js#L142

if a user installs VS 2013, the C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\WPSDK\WP81 folders won't exist and the batch script won't either. There's mention of it here: http://blogs.msdn.com/b/vcblog/archive/2014/07/18/using-boost-libraries-in-windows-store-and-phone-applications.aspx And a posted "solution" with some scripts that they ask you to copy over to rebuild the expected structure.

Our detection code assumes that the folder and file must exist to correlate a Windows Phone SDK version with an install of VS. So we need to either try and ship these files and copy them over when missing to "repair" this for users (perissions/copyright/distribution?); or we need to not link the SDKs or find some other way of determining what Windows Phone SDKs an install supports.

ingo commented 9 years ago

Not sure of the license on those files, and I can't add a comment, and can't directly contact the author. Thoughts?

sgtcoolguy commented 9 years ago

I'm trying to track down why @skypanther is unable to get an emulator listing and he was missing these files, which resulted in ti info saying no WP SDKs associated with MSBuild/VS 12.0:

Microsoft (R) Visual Studio
  11.0
    Path                      = C:\Program Files (x86)\Microsoft Visual Studio 11.0\
    CLR Version               = v4.0.30319
    MSBuild Version           = v4.0.30319.33440
    Windows Phone SDKs        = 8.0
  12.0 (selected)
    Path                      = C:\Program Files (x86)\Microsoft Visual Studio 12.0\
    CLR Version               = v4.0.30319
    MSBuild Version           = v12.0.31101.0
    Windows Phone SDKs        = not installed

Microsoft (R) Windows Phone SDK
  7.0 **Not supported by Titanium SDK 3.6.0.v20150106084422**
    Path                      = C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v7.0\
  7.1 **Not supported by Titanium SDK 3.6.0.v20150106084422**
    Path                      = C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v7.1\
  8.0
    Path                      = C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.0\
  8.1 (selected)
    Path                      = C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.1\

Windows PowerShell
    Enabled                   = yes

Windows Phone Emulators

Windows Phone Devices

Android SDK
  Android Executable          = C:\android-sdk-win\tools\android.bat

The lack of association between 12.0 and WP SDK 8.1 is due to these missing files. I'm not convinced that matters yet, because after adding them in it fixed this portion of the puzzle but he's still getting no emulators.

cb1kenobi commented 9 years ago

I believe vcvarsphoneall.bat is installed when you install the Windows Phone SDK, not Visual Studio 2013. It's confusing because the WPSDK installs files into the VS2013 directory. That's why we check the registry to ensure the WPSDK is installed and where.