I am trying to develop a touch-enabled application in C# that runs on Microsoft's Surface Pro 2. Searching suggests that the best tool to use for this is the Surface SDK 2.0, which I have installed on my development machine. I have also installed the Surface Runtime on the device itself.
I am able to run and use all the sample applications packaged with the Surface SDK on my Windows 7 dev machine using the Input Simulator tool, but when I attempt to run the sample apps on the Surface Pro 2, finger touches are not recognized. The only touch input that is recognized by these applications seems to be the equivalent of mouse clicks sent when I touch the screen with the stylus. Touch input of all types is recognized outside of the Surface SDK sample apps, so the hardware does not seem to be at fault.
In addition to testing the sample apps, I have created two of my own test programs that attempt to handle touch events on the Surface Pro 2. Both use the Surface SDK, and one uses the WPF framework while the other uses XNA. Both work fine on Win 7 with Input Simulator, and neither captures any touch events on the Surface Pro 2.
I found this unanswered question from someone who seems to have a similar issue.
I also found this article which describes using one of the sample apps to debug issues that sound like what I'm experiencing. However, the recommended solution, to enable SurfaceInput, doesn't work for me, as I can't find any reference to that tool / service on my device.
My questions are:
Is there something else I need to enable or install on the device to allow touch input to work with the Surface SDK 2.0?
Is the Surface Pro 2 incompatible with the Surface SDK for some reason?
Is there a better option than the Surface SDK for developing touch applications on Surface? I'm not too picky about the language; C# was most convenient for these tests.