none
Kinect problem when deploying as x86 using the FaceTracker3d application. RRS feed

  • Question

  • I am trying to deploy a project that has to run in x86 mode due to other peripherals.  VS2010 works just fine when I debug the app but when I deploy and install it the app crashes.  I can set the build to "Any cpu" and it will install and run just fine.

    I'm using the Kinect SDK 1.5.2 and the toolkit 1.5.

    My machine is running Win7 64bit.

    I can recreate this problem using the "FaceTrackingBasics" app using C# and with the "FaceTracking3d" app.

    I published the app as an x86 and x64 then tried to install it on a brand new Win7 x64 machine and the Kinect will capture the first frame and freeze.  It will throw an error sometimes and say that the Kinect toolkit has stopped working.

    Thank you for your help in advance,

    Steve

    Thursday, August 15, 2013 7:22 PM

All replies

  • Here is the error I'm getting after installing and running the app when the Build setting is set to x86.

    {"Unable to load DLL 'FaceTrackLib.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)"}


    Steve Steadman

    Thursday, August 15, 2013 7:29 PM
  • If you are building a .Net based application, be sure you explicitly set the target to x86 only. Additionally, copy the correct redist.dll's C:\Program Files\Microsoft SDKs\Kinect\Developer Toolkit v1.7.0\Redist\x86 for the target platform into the folder with your executable. The error is because it can't find the necessary .dll in the path.

    Are you able to deploy the sample FaceTracking sample without any issues? How did you install the Kinect runtime and other components?

    http://msdn.microsoft.com/en-us/library/dn188678.aspx

    http://msdn.microsoft.com/en-us/library/jj130970.aspx
    - Creating an Install Package with the Face Track SDK


    Carmine Sirignano - MSFT

    Monday, August 19, 2013 8:14 PM
  • Thank you Carmine for the reply.

    I made sure all my settings are as you requested.  

    I am now using the Kinect ToolKit 1.5.1 since that is the one I started with.  

    I am now using the unmodified KinectFaceTracking3D app.  I published it and ran the setup file on another brand new Win 7 machine with Kinect SDK and Toolkit 1.5.1, the default settings were used. 

    When I clicked on the "setup.exe" the app errors out instantly and says the .dll is not found but I verified it is there, in fact I copied the .dll to as many directories as I could find that related to this file just to cover all the bases.  The setup does install a desktop icon but it will always error out when I click on it.

    Now, if I go to the Microsoft SDKs\kinect\DeveloperToolkitv1.5.1\samples\C#\bin\x86\debug, which is where the .exe is installed, and run the "faceTracking3d.exe" file it will open but the color image from the kinect will capture the first frame and stop.  The ironic thing is that the face tracking works because it will put the image on the screen where my face should be if the image was moving.

    Steve


    Steve Steadman

    Monday, August 19, 2013 9:40 PM
  • As far as the version of the SDK, all v1.x versions are forward binary compatible. You can use the 1.7 SDK with a 1.5 built application since all the api's are the same. You just can't go backward if you are using a specific feature enabled in a later SDK.

    Just to clarify, when you are deploying to another machine is that a developer machine with the full Kinect for Windows SDK or does it only have the Kinect for Windows redist runtime? What type of sensor are you using?


    Carmine Sirignano - MSFT

    Tuesday, August 20, 2013 4:25 PM
  • I loaded the full 1.7 SDK and Toolkit on my new machine.  The .dll issue is resolved but on the new machine when I load the "kinect explorer" and run the sample programs the problem is that the video feed never updates the app so the first frame is captured and it stops.  The program is still running because I can see the facial tracking mesh display where my face is supposed to be.

    Is there a problem with the USB chipset on my motherboard?  

    I am using:  MSI Z87-G41 motherboard and a Microsoft Kinect, not the XBOX one.  Windows 7 64.

    Steve


    Steve Steadman

    Tuesday, August 20, 2013 4:37 PM
  • Be sure you are connected to the USB2 ports not USB3. I am not sure of the USB3 chipset and but I know my MSI z77a-gd55 has no issues with Windows 8. If the same sensor works on your other machine and not on the new one, there could be a driver or USB issue. Try the typically USB2 troubleshooting, check for share USB Host Controller with other devices. There are various threads that discuss these issues but that is where I would start.


    Carmine Sirignano - MSFT



    Tuesday, August 20, 2013 11:01 PM