Unable to load dll in Console or Web API project - exception

I'm experiencing a rather strange problem.
I'm trying to interface with a Wacom signature pad, and would like to build a web service wrapper for the pad's API so that I can capture a signature on a website.
The signature pad requires two dll's to work: STUTablet.dll and STUTabletCore.dll.
I have a class library that references STUTablet.dll. Both dll files are in the class library's bin directory.
If I reference my class library from a Windows Forms application, I am able to call methods that call STUTablet.dll. However, if I reference my class library from a console application or an MVC application, an exception is thrown.
The exception is as follows: Unable to load DLL 'STUTabletCore.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E).
I have tried adding the same references that a default Windows Forms application has to my Console application, but to no avail.
Does anybody have any idea as to why STUTablet.dll is unable to load STUTabletCore.dll? There has to be some kind of dependency that I'm not fulfilling.
Thanks,
Francis :)

I had similar issues but eventually got help from Wacom UK support team and managed to get
a web based application to work on IE only with ActiveX.
Try
http://gsdt.wacom.eu/download/Signature-SDK.xml
Choose either 32 or 64 bit Signature SDK installer, plenty of SDK examples

Related

App passes WACK but fails store submission Certification

I am observing a strange situation where my app passes WACK on my computer, but submission to the store fails at Certification stage, due to unsupported APIs. I am using MSVC 15 Update 2.
Solution Consists of:
Universal APP
Class Library (Universal Windows)
Class Library (Portable)
EF Core RC2
Syncfusion SfChart.UWP.dll
Store Certification output:
Error Found: The supported APIs test detected the following errors:
API sysctl in libc.dll is not supported for this application type. Microsoft.Extensions.PlatformAbstractions.dll calls this API.
API uname in libc.dll is not supported for this application type. Microsoft.Extensions.PlatformAbstractions.dll calls this API.
API RtlGetVersion in ntdll.dll is not supported for this application type. Microsoft.Extensions.PlatformAbstractions.dll
calls this API.
As mentioned, no errors are spotted by WACK on my machine. I tried both WACK that comes with visual studio and WACK that's installed separately.
Could "Class Library (Portable)" cause this just by it's existence?
Update: It's not the portable class library, i removed it and still get the same certification failure.
This was caused by entityFrameworkCore.Tools. They are still pre-release and do not support .net native properly.
There is a workaround, but you can also simply remove it from the project before compiling it with .net native and submitting it to the store.
Are you expecting Microsoft.Extensions.PlatformAbstractions.dll to be included in your package? It's possible that this is getting included in the packages built into the .appxupload file, but not in the packages you build locally to test. I have seen some recent cases where the project is including references to dlls that are unnecessary in the package and are not compliant. You may want to investigate this angle and verify if this file is being included incorrectly.
One way to validate locally why you might be passing is to check the programinventory_*.xml file in %localappdata%\Microsoft\appcertkit, and see if you can find any references to Microsoft.Extensions.PlatformAbstractions.dll. If the file is not found when locally testing, then your best bet is to investigate your project and why it's getting including when you build the .appxupload file to submit to the store.

MissingManifestResourceException on Windows Phone 8.1 with .resx resources

I'm developing a Windows Phone 8.1 app that also targets Android(Xamarin)
As ever I added my string resources(.resx) on a PCL and referenced them on my launcher project to use it on my views, this all works fine on WP 8.1 silverlight but on the WinRt when I configure the project to release and run it on a device, for some reason I always get a MissingManifestResourceException. I've tried every solution for this problem out there without any success.
Note that on the emulator everything works fine, when the solution configurator is set to Debug it also works on both device and emulator. The only combination here is device and Release.
The app source code is on Github.
I was able to create a simple project to replicate this issue, basically it is a WP 8.1 app and a PCL project with the embedded resources, Download Link
Anyone has any ideas?
EDIT: After making some more testing I tried running an old Windows 8.1 app that I've done with the same localisation model and the same issue appeared so it seams to be a tool issue and not a configuration issue, since the Windows 8.1 app is on the market and everything went fine back there.
Our team ran into a similar issue which was tracked down to the runtime and not the PCL, WinRT component, or application package. That is, the resources exist within the PCL assembly, within the application package resources.pri file, but just cannot be found at runtime.
There is an active Microsoft Connect report here:
https://connect.microsoft.com/VisualStudio/feedback/details/991028/issue-using-resx-files-on-winrt-apps-windows-phone-and-windows
Our workaround was for the WinRT component to inject into each generated Resources class of each referenced PCL our own derived ResourceManager which redirected the call to the WinRT ResourceLoader instead. I've written a blog post that describes that workaround:
http://blogs.msdn.com/b/philliphoff/archive/2014/11/19/missingmanifestresourceexception-when-using-portable-class-libraries-in-winrt.aspx
I got to the bottom of this today. While bundling the app package, resources in dependencies that are not for a language being used by the app are stripped out. To prevent this from happening, add the following assembly-level attribute to your application.
using System.Resources;
[assembly: NeutralResourcesLanguage("en")]
I had the same behaviour. Today I created a new PCL Library (with another name) and copied the resx file to this project. I modified all references and everything just works fine in my WinRt (Windows Store) App now!
There was the string 'resources' in the portable class library name. Perhaps this was the problem!
I am able to reproduce this issue launching DVD sample and unfortunately in my project. I have an WP Silverlight 8.1 project registering a Windows Runtime Component Background Task and both of them using a Portable Class Library sharing some common localized strings as resources (.resx), among other things. The exception is thrown from Background Task when calling any property to get strings on generated .Design.cs class (only Release + Device).
In order to fix this I tried, without success, to use directly ResourceManager and/or to add .resx files directly into the Background Task.
I ended-up porting needed strings to .resw files and use the new "WinRT preferred" way via Windows.ApplicationModel.Resources.ResourceLoader in the Background Task project.
Seems to me that ResourceManager is not compatible with Windows Runtime anymore in release.
This is not necessary an answer, but is better than nothing since I do not have 50 reputation points for a comment.

Windows Phone 8.1 - DLL reference problems when using the camera

I'm trying to create a simple camera application according to the MSDN tutorial.
All I did was installing Visual Studio 2013 Update 3 and then created a new Visual C# \ Store-Apps \ Windows Phone-Apps \ Empty App Template and added the code to my MainPage.xaml.cs.
The first problem is, that it does not find the namespaces Microsoft.Xna.Framework.Media, System.IO.IsolatedStorage and Microsoft.Devices. According to the tutorial, I have to add the Xna DLL in the "Add references" .net Tab, but unfortunately, there is no .net tab. I only have the following categories:
-Assembly (All Assemblys are already references)
-Project
-Windows Phone 8.1 (only 5 DLLs, but different ones)
After a lot of searching, I found them in 'C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.1\Tools\AppDeploy\MdilXapCompilev8.0\Framework', but there is no System.IO.IsolatedStorage DLL.
When I ommit this using directive, I end up getting an error because it does not know this.Dispatcher.
Am I missing something? Do I have to install anything else?
The problem is probably that the link you have provided concerns WP8.1 Silverlight and you might have chosen WP8.1 Runtime project. Those are different API's - XNA is not supported in RunTime, you also won't find Microsoft.Devices there.
If you want to create your Camera App for WP8.1 Silverlight encure that you have chosen (Windows Phone Silverlight) template. Otherwise, of course you can also write Camera App but with different API - you may take a look here,also you may find something useful here at blog.

How can I use a console application with my website in Visual Studio?

Please read the following in the Visual Studio 2012 context:
I have two projects--one is a website (File --> New Website) and another is a console application (File --> New Project --> Windows --> Console Application). I am the author of the former.
The standalone app fakes the input by hardcoding it, runs through some code, and creates an output. It uses dlls from a local installation of software that I have installed on my machine to generate this output.
I read on MSDN that I cannot add a console app to a website solution in a useful manner. So, if I compile the console app to output a dll instead of an exe, can I reference that dll in my website? How can I do this exactly? I would need to pass the input value from the website to the dll, and return meaningful results from the dll. Is this possible?
Yes, you describe a feasible way to solve this. You need to create a class library project, add source code from console application to it, except the the class that has static Main method and modify (add to) that source code such that there is a class that you will be able instantiate from the code in your web application after you add the class library assembly to the web application as a reference. This class will have a method with appropriate parameters, that you will call. All this assuming that the task that console application code performs is fast and will not create noticeable delay in the web application response. If the task takes a long time, you will either have to run it in a background thread or move it outside the web application - the latter is significantly more involved.

Facebook ActionScript 3 API not working in FlashDevelop

I am writing a little test program, and I have a problem regarding the ActionScript 3 Facebook API (Graph_API_Web_1_8_1.swc).
I am using FlashDevelop, and I correctly added the SWC file to the "lib" folder.
I also imported the Facebook API correctly in my class file (the auto-finish function of FD recognizes all code from there).
BUT, once I start compiling my code, I get the following error:
Error: Access of undefined property Facebook
for each line of code, that includes a Facebook call (such as Facebook.init(...), Facebook.login(...) and Facebook.logout(...)).
I added a screenshot of my FlashDevelop setup to clarify things:
This is even more mysterious to me, since the AIR application with the FacebookDesktop API is running without any errors.
How do I fix this problem?
This has happened to me several times. Don't waste your time looking into which ActionScript 3 SDK SWC version or Flex SDK you are using. It's just a weird bug. Instead, do the following.
Close FlashDevelop
Create a completely new project
Add the Facebook SWC to library
Then it should work. If not, reboot. It happened to me several times. I hope this helps.