Win and Mac installers from Win - air

Is it possible to create installers for both Windows and Mac from Windows?
Will the *.air file and/or the *.fla be read in Mac if created in Windows?

.air installers will work on any desktop platform that has AIR installed (AIR is supported for sure on Mac and Windows). So you can create on one platform and run on all. The FLA is your project file and is not actually your application.
You can also create an exe installer using Windows or a .app file using OS X. These do not require that AIR be installed, I believe. However, you may not create an exe on OS X or a .app on Windows.

Related

Visual Studio 2015 run and debug on different OS version simulators

I am developing a VB.Net based Windows8.1(10) Store application.
After published, I've found out that my App crashes on Windows8.1 while it works fine on Windows10.
So, I want to debug my App on the Windows8.1. However, I cannot find how to do so.
When I [Run] the App to [Simulator], it runs on clone of my computer, but I want to run it on other version of Windows.
Visual Studio 2015 is now installed on Windows10.
Thanks.
Disclaimer: I work on Visual Studio, though not on the Universal/Modern App area.
This is not a supported scenario and there is no feature present in Windows that emulates or simulates previous versions of the "Modern" runtime environment.
The Simulator feature is actually a local-loopback Remote Desktop (Terminal Services) session and existed to make it easier to debug Modern applications given that they could only run in a fullscreen mode, however as this is no-longer the case (as apps are now floating windows) the utility of the Simulator is limited, and as you're discovering is not relevant to your problem.
The only solution I can recommend is to use Hyper-V (or another desktop virtualisation product, such as VirtualBox or VMWare if you don't want a hypervisor installed) to install a dedicated Windows 8.1 environment followed by installing the Visual Studio Remote Debugger.
Given the rapid adoption of Windows 10 (as it is provided as a recommended update to the majority of Windows 8.1 users) I don't personally recommend explicitly targeting the Windows 8.x "Modern" app environment unless you know you will have users or if it's a contract requirement.

Developing Windows 8 Metro-Style apps requires Windows 8 rc preview, right?

There's no emulator for Windows 8, so in order to develop metro apps I must install the release candidate on a device and run Visual Studio there, right? That's what this page seems to suggest, but I just wanted to double check.
Yes, Windows8 is required.
However, VM can be used. For example, I'm running Win8RP/64 and VS2012RC in Oracle VirtualBox on Win7/64.
NOTE: For developing Metro Style App, you should NOT install VirtualBox Extension Pack.
Yes, you need Windows 8 to develop Windows 8 Metro style apps.
Metro Style apps rely on a new set of APIs which are implemented only in Windows 8 through the the Windows Runtime (WinRT).
There is no emulator for Windows 7 and not even for Windows 8... Windows 8 has a simulator which in practice is just a Remote Desktop session to the same machine. It is not an emulator.
While Windows 8 is not in its final version, what I recommend is to install Windows 8 in a VHD (virtual hard disk) and boot your PC directly to the VHD. It is faster than running virtual machines (because only the disk is virtual, all the rest is real hardware) and you can keep your Windows 7 intact.
This is what I've been using since Developer Preview. I have a dual-boot configuration being one for the Windows 7 that is booting from the regular disk partition, and one Windows 8 that is booting directly from the VHD on disk.
Metro UI style is just a design approach and some guidelines. You are free to implement such interface using Visual Studio 2010 as well as 2008. Using C# and WPF everything is possible. But, indeed, new Visual Studio has a set of Metro style components (WPF) with which your development process will be much more quicker.
The only thing you can't use at OS other than Windows 8 - is WinRT subsystem.
Almost all of the development tools needed to build Metro style applications can be run on OS's other than Windows 8 (Visual Studio and the package creation tools require Windows 8). So it should be possible to set up a build environment using msbuild.exe (or even make/nmake) that will compile and link metro-style applications on an OS other than Windows 8.
However some parts of development MUST be done on Windows 8 - the tools for some of the steps of development will only run on Windows 8.

32-bit dll not working in 64-bit os

I created a dll file built (Project:win32 app, ATL and COM object using Visual studio 2008) in 32 bit. In win 7 32 bit OS, After registering my dll i'm getting "ABC" option in context menu(on right click). Now i move to win 7 64 bit OS. Dll loaded successfully, but i'm not getting "ABC" option on right click(in context menu). Can anyone please point me where i went wrong or any suggestions ?
Note: Right click on Folder gives "ABC" option.
A shell extension compiled for 32bit will run only in a 32bit process. The Windows Explorer of a 64bit Windows is a 64bit process, so it requires a 64bit shell extension.
If a 32bit application would use the fileopen dialog (on a 64bit Windows), the dialog would require a 32bit shell extension. So it's recommended that you install your extension like that:
Win32: 32bit Shell Extension
Win64: 64bit and 32bit Shell Extension
To do this, you have to give different GUIDS to the 32bit / 64bit shell extension. Hope that makes it a bit more clear.
Edit: As Raymond suggested, it seems that you can use the same GUID for both extensions.

System32 folder in windows 7

I'm using this code in XP 32-bit OS to get the %windir%\windows\system32 folder path.
sysFolderPath = Environment.GetFolderPath(Environment.SpecialFolder.System)
What I want to know is that will this same code return the %windir%\windows\syswow64 folder when used in Windows 7 (64/32-bit)?
It will return c:\windows\system32, even in a 32-bit program that runs on the 64-bit version of Windows. Do not fix this, it doesn't need fixing. Because when you use that path, Windows will automatically remap it to c:\windows\syswow64. The file system redirector takes care of it.
I tried on my Windows7 box with .NET 4.0
This code:
Console.WriteLine(Environment.GetFolderPath(Environment.SpecialFolder.System));
Console.WriteLine(Environment.GetFolderPath(Environment.SpecialFolder.SystemX86));
Prints the following from both 32- and 64-bit process:
C:\Windows\system32
C:\Windows\SysWOW64
Nope. On my Windows 7 64-bit box, targeting x64:
C:\Windows\system32

Write Mac OS X apps with Visual Studio

I just came upon this article here which can turn your day to day visual basic app to run on mac os x. Here is the link: http://mac.sillydog.org/dev/visual_studio.php The thing I don't get is that the author doesn't tell us specifically what to download, and where to get all the files. He's a bit vague... Can anyone make this clearer to me?
BTW: I am using VB.NET although the author uses C#. I think it will still work though.
.NET Framework
Microsoft Visual Studio Express
Mono Framework for Mac OS X
wx.NET
The Mac OSX build of wx.NET is called Carbon. The readme says:
This package is a contribution of wx.NET user Matthias Fuchs, who wrote:
Hi,
as i didn't find a binary package for Mac OS X I created my own ;-)
I've built wx.NET for Mac OS 10.5.7. I used wxWidgets 2.8.10 and created a Mac OS X Framework Bundle.
The zip file includes a "wxWidgets.framework" folder, which must be installed into /Library/Frameworks/ on the root partition of MacOS X. I also tried to copy the wx.NET.dll to Mono's GAC, but mono can't find the wx-c.dylib. But I think it is ok, that users can just put the wx.NET files into their bin/debug/release folders.
Follow those instructions and use the Windows Mono build of wx.NET when testing on the same machine as Visual Studio and the Mac OSX build when you deploy it.
The important part is the mono framework. It looks like you need this release.