I am trying to make an application that will be used on an MS Surface tablet and tried to create a Surface project on VS 2015. When I found that a Surface project is not part of the installed templates in VS 2015, I tried to download the SDK only to find out that it requires VS 2010 in order to use it. After noticing this, I'm starting to think that the Surface 2.0 SDK is no longer being used, but I wanted to make sure before I start looking for an alternative. If that is the case, what other types of templates could be used to create apps for MS Surface tablet?
As of now it would make more sense to just write a Windows Universal App if your targeting a Windows 8 tablet. This is available in Visual Studio 2015.
It's very confusing of Microsoft to have done this, but the big multi-user table-top devices that used to be called Surface, are now called PixelSense, and the Surface name now applies to a line of touchscreen-enabled laptop computers. This technote attempts to explain this.
I wasted a LOT of time with this confusion, and hope to spare others.
Related
I have created a game using C# and Microsoft XNA 4.0. It works on fine on Windows 8 and 8.1, but my friend tried downloading it for a computer running Windows 10 and found that it wouldn't open. It wouldn't even appear in Task Manager when opening it was attempted. The computer in question has the Microsoft XNA Framework Redistributable 4.0 installed on it, so it should be working. Is Windows 10 simply not compatible with XNA?
XNA is no longer supported on newer versions of windows, it was discontinued and isn't supported on platforms newer than Windows 7. Luckily there is an open source implementation of XNA which is essentially the exact same thing and that is currently supported on all windows versions. It's called "MonoGame", here's the link to their website:
http://www.monogame.net/
I know this is a older post but just for those looking for an option like I was today (this post is still a top hit in google) its a bit of work to get setup, but XNA will in fact run on windows 10 just fine, and there is a way to actually use Visual Studio 2017 with XNA just fine as well:
http://flatredball.com/visual-studio-2017-xna-setup/
so if you have code for XNA or like the XNA framework (Like I do, I prefer the pure c# way not c# to some other bloated bridge like Unity) for 2D games then this will be your savior.
Enjoy :)
Some updates:
On March 14, 2016, ID#Xbox announced that MonoGame is coming to Xbox One:
* https://mobile.twitter.com/ID_Xbox/status/709402975051980800
In the FB group Xbox One Indie Devs, Tom Spilman from the MonoGame team had some information to add, more info coming soon.
* https://www.facebook.com/groups/XboxOneIndieDevs/permalink/852775944827686/
Stay tuned to the Twitter account and FB group mentioned above, for new info when available.
Hope that helps!
XNA does work on Windows 10 and even Windows 11. In 2021 I released a game using XNA Framework and it works but the user will have to install XNA Redistributable 4.0 for the game to run on their system so that's not ideal.
But then I ported my game to FNA Framework which is an open-source, identical, reimplementation of XNA. My codebase required almost no changes to work under FNA so I highy recommend it to you.
FNA requires no additional library installation. The DLLs need to be in the same directory with your executable and it will work.
You can see my game here if you are curious about the subject: https://cyon4d.itch.io/cozy-days
To add on what x2kpb said, your best bet at this point is to look at MonoGame for certain platforms, and FNA for others.
XNA, in its pure form, will not work as a new Windows 10 application. The platform to bring win32 (XNA) games to Win10 is called Project Centennial
Both Xbox One and Windows 10 will support MonoGame, per this video at last year's BUILD conference.
Following a comment posted to one of my questions, I am trying to get started using DirectInput.
I am absolutely unfamiliar with it, and I don't know how to get started at all. The namespace seems to be Microsoft.DirectX.DirectInput but I cannot seem to find it anywhere in my references.
It says in several places that you just have to add it from the references in my project but I couldn't find it.
I checked for a DirectX SDK but it seems it is now part of the Windows SDK and the Windows SDK is already installed with Windows 8 so I shouldn't have to do anything?
I found a couple of alternatives, of which SharpDX sounds like a good one. I have not been able to start with this either... I have installed the SharpDx.Input nuGet package but I can't seem to use the code I can find elsewhere, like here.
new DirectInput() for instance is not recognized at all by Visual Studio.
The "Microsoft.DirectX.DirectInput" assemblies are Managed DirectX 1.1 and are deprecated. Furthermore, VS 2013 defaults to using .NET 4.x which is not supported by legacy Managed DirectX 1.1. See DirectX and .NET.
The underlying DirectInput component whether used by C# or C++ is legacy and is not recommended for use for mouse or keyboard. For Xbox One and Xbox 360 common controllers, we recommend using XINPUT. To use legacy HID devices (joysticks, PS3 controllers, some haptic controllers, etc.), you still use DirectInput. For XINPUT use on Windows 8.x, see this blog. For use from C++, you should look at DirectX Tool Kit particularly the GamePad class.
So I want to learn C# and XNA but after some research is came to my attention that XNA is apparently dead, and there is an alternate library called MonoGame which uses XNA framework.
So, can I use XNA lessons/ tutorials for MonoGame or are the major differences in the way programming is done depending on what you use making XNA tutorials completely useless for MonoGame?
Almost.
MonoGame doesn't use the XNA framework, it is a re-implementation of the XNA framework. The difference is that all of the code inside MonoGame has been re-written to behave identically to the XNA framework.
You're probably wondering why someone would want to re-implement something that already exists. Well, you're correct in saying that XNA is "dead" so to speak. You can in fact still use the XNA framework if you want but it's no longer supported by Microsoft on Windows 8 or above.
However, that's not really the primary reason MonoGame came about. The real reason is that XNA only works on Microsoft platforms (e.g. Windows, XBox, Windows Phone). MonoGame's purpose is to allow existing XNA code to be easily ported to other plaforms (e.g. iOS, Android, Mac OS X, Linux, Windows 8, Windows Phone 8, PlayStation Mobile and the OUYA console)
Yes, you can use XNA lessons / tutorials for MonoGame most of the time. MonoGame's code and behaviour is intended to work exactly like the XNA framework. I say intended, because it's not perfect but it does work very well and there are plenty of games already using MonoGame to prove it.
XNA can still be used on windows 8, despite the being not supported. To do so you have to install a n additional component first. You have to download Windows live Games redistributable, then XNA, and it will work on windows 8.
A 2022 updated answer,
craftworkgames answered best:
Yes, you can use XNA lessons / tutorials for MonoGame most of the time. MonoGame's code and behaviour is intended to work exactly like the XNA framework. I say intended, because it's not perfect but it does work very well and there are plenty of games already using MonoGame to prove it.
The following how-to is an updated expansion/extension of willthiswork89's answer. I do not suggest using it, but it is worthy of a modern answer.
As long as the DirectX9 runtime libraries are installed, XNA programs continue to run as of Windows 11. Do not forget to reboot after the DX9 installation.
The XNA installer will fail to run on modern versions of Windows. Start running the installer and leave the window open at the first prompt (to allow the installer extract the files, but before it deletes them), and find the temporary files in %tmp% or %temp%, Type this in File Explorer then sort by date (the folder name is a GUID and the newest one) and manually execute(double click) each of the .MSI files found.
The templates are a different story(MS VS > 2013). I suggest downloading a complete XNA example .SLN project, and cleaning it up after the update process, to provide a starting point.
You may still have to update the project references(the names match, but the versions may be different).
Note: GamerServices is mostly, if not totally, defunct.
I suggest using MonoGame < 4.0 as a cross-platform drop-in replacement for XNA. Instead of using this answer, since Monogame is feature complete and cross-platform.
If you prefer the old .sln project style, or require .Net framework 4.5, then look to Monogame 3.7.
I know I need a mac to deploy but can I at least use my PC to develop the application? It would really help me a lot if I can develop on Windows where I can focus on writing the app.
This answer covers only Xamarin 2.0. Unfortunately I don't know MonoTouch.
Take a look at this statement about Xamarin 2.0:
Xamarin 2.0 bundles the company's Android, iOS and Mac development
tools in a single affordable package aimed at all tiers of developers.
The free Starter edition includes the Xamarin Studio IDE enables
developers to create Android, iOS and Mac apps using C#. However, the
free edition doesn't allow developers to exceed 32k of compiled IL
code and it cannot import or call upon any third-party libraries. The
$299 Indie edition removes this restriction. Things start getting
really interesting for .NET developers with Xamarin Studio's $999
Business edition. This version adds the ability to code iOS
applications within Visual Studio. Yes, you read correctly — code
iOS applications in Visual Studio! Granted, you still need a Mac to
compile and deploy the application to iOS devices (more on that
later), but the fact that you can use a familiar IDE to develop iOS
applications is a game changer.
To make it short: Yes you will need a mac to deploy your application and
yes you can develop on windows using Visual Studio.
Source: http://www.drdobbs.com/tools/xamarin-20-review/240150634
No you don't need the 1 k version to compile on windows. When you want to deploy your app you need to buy it! If u are making a app for windows 8 or whatever you dont need to pay. Monogame is a open source project. For the deployment to the phones your paying to the xamarin project.
"This means that your Xamarin iOS for Visual Studio installation requires a networked Mac OS-X computer to perform these tasks for you. Once configured, Xamarin’s tools will make the process as seamless as possible, but the fact remains that a Mac is required in addition to the Windows computer running Visual Studio."
So still need to hook up my mac and perform all the installations and configurations. Will take time but not a deal breaker I guess.
It is possible to use cloud build services for such a task. One such service worth giving a try is http://ship.io - they offer a free plan to get started.
I'm looking to create a very -tiny- application(s) in Windows 7. I'm looking for a programming language like C# and a simple framework that
Makes the application very light weight
Doesn't require any libraries or modules (only the *.exe and works on a newly installed Win7)
The IDE (Or the compiler) let me easily implement windows 7 features (like the menu, the graphics...)
The point: I want to create a small application (light weight so it can be easily transported), that focus mainly on Windows 7 graphic design and features.
I don't know if such IDE exists but also asking how will you solve it, mean if you have to create a tiny application (gadget like) how will you proceed?
Lightweight and regarding dependencies: Well, since you want kind of C#, you have the .NET Framework. That's not exactly lightweight, unless you're sure that the target system has it available. Be sure to check which .NET version comes preinstalled with Seven. Addendum: Now that 7 is out, it seems it comes preinstalled with .NET 3.5 SP1 (full framework, not client profile). That's a good thing.
Have a look at the Windows API Code Pack for Windows 7 for access to Windows 7 features. Like tvanfosson, I'd also stick with Visual Studio and .NET.
Personally, I'd stick with Visual Studio. You might want to get a utility like NuGenUnify, which makes it easy to use ILMerge to combine any extra libraries into the main exe if you want to distribute as a single file.
So far I haven't seen any other IDE that beats Visual Studio for windows app development. Especially soon after a Windows release. I'd be surprised if I am proved to be wrong.