How to use Windows Biometric Framework (WBF) in WPF application? - wpf

I'm working on WPF application which should identify user using Fingerprint Reader.
It seems Windows Biometric Framework (WBF) is good enough for this task but I can't found examples where I can see how it can be used in my WPF application. Couple found examples use WBF to verify user currently logged in.
But my application should work with custom users and windows authentication is not acceptable.
I found also small MSDN article where described three sensor pools, one of them should be used in my situation. It is not clear how I can move Fingerprint Reader device between pools, where to get C# wrapper for Biometric API and how all of these things can be used together.
I'm using UPEK Eikon as fingerprint reader device and Windows7 based tablet PC where my application should run.
Could you please help and give me examples and links on useful resources?
Thanks
Dmitry

There are complete C++ examples in the WBF documentation NOW.
I'd like to know where you:
"found examples use WBF to verify user currently logged in"
as those should then show you how to call the WBF API from WPF.

Related

WPF desktop to web based application

I have developed one desktop application in WPF. Now I would like to have a web based application. I can use SilverLight since it is closely related to WPF, but my worry is I can't support mobile devices except windows phone.
My question is, What is the proper way to develop a web based application for my situation?, please note that I have already developed a WPF desktop application and I would like to continuously support desktop users too.
FYI, I did some research on this and I found this article ,which describes using WPF.Polymer, Is it a correct way?
////////////////////////////////////// UPDATE //////////////////////////////////////
Hope this is an alternative. Using KnockoutJS. This link too

Take a photo in WPF using the default camera app in Windows 8

I was asked to develop a software in vb.net and one of it's features should be the possibility to take photos on a tablet PC. I already played around with the MediaCapture API which returns me a photo, but as it seems that it's not possible to show a preview or anything else outside of ModernUI apps. It's just pure photo capturing.
I thought for a little while how this problem could be solved. I got some inspiration from my Android phone then. My idea was to call some sort of API to open up the regular Windows 8 camera app in ModernUI mode, let the user take the photo and then receiving that through a "return value", just like you usually do it in Android apps.
Now my question is, if there is a way to start up the Windows 8 default camera app, let it take a photo and receive that back into my WPF desktop application.
I could develop my software as ModernUI app as well, but I never did that and it also seems like you must publish it over the web store then, but I only want to use that inside my company.
My other (simple stupid) idea would be to ask the user to open the camera app by himself, take some photos and come back to my software later. I could then receive the images from the folder they were stored in. I guess that would work as well, but I don't really like that idea because it's not very intuitive and seems just stupid.
If you have an idea (or an alternative), I would be really happy if you could share it with me.
Thanks in advance!
Unfortunately, there are no .NET classes that allow you to access a webcam or integrated camera on your computer. This means that you have to take a look at the native Windows API and call it from your application. I cannot point you to the right methods that you have to use, as I just have used Microsoft Media Foundation to capture a continuous stream of images from a webcam and encode it to a video file.
There are some sites that encapsulate this native functionality in .NET classes, but I don't know if they are good or not:
http://dotnet.dzone.com/articles/using-webcam-wpf-application
http://www.yiigo.com/guides/vbnet/how-to-process-image.shtml
(just google for more if you'd like to).
In Windows Store Apps, this task can be performed relatively easy with the media capture API you've mentioned. You can also side-load Windows Store Apps if you have Windows 8 Pro or Enterprise - then you do not have to publish your app in the Windows Store.
If you have any further questions, please feel free to ask.

Read information from CMD, browser using windows UI automation

I can understand how UI automation can help retrieve information from text boxes within windows forms applications. How can I retrieve information however from command prompt tools and web browsers? I have a telnet session that I would like to read data from as well as a simple web based tool with plain html. Any ideas?
I could be wrong, but I don't think there's an easy way to interact with console programs using the UIA API, and web browsers, while possible, would be time-consuming to deal with. But other libraries can help.
Are you using C#? If so, for console applications, you can probably use the Process class if your automated test are simple - here's an old post about the same topic:
Command line automation – expect equivalent
I'm actually still searching for a free Expect-like C# library. Haven't spent too much time looking yet, though.
For web automation, I suggest using the Selenium C# client driver - as far as I know, it should do what you need:
http://seleniumhq.org/docs/03_webdriver.html
http://seleniumhq.org/download/

AutomationFactory - Information Needed

I am interested in using the AutomationFactory namespace but I cannot find any documentation on what I can use for a sepcific COM. I figure it's because I do not know what terms I should actually be looking up. Does anyone have any resources? In particular I'm looking for information on Excel, Word and Outlook.
Thanks In Advance!
AutomationFactory is a class, not a namespace. It is specific to Silverlight version 4, an execution environment that doesn't support COM Automation by default, only if the app runs out-of-browser as a trusted app. The MSDN Library article is here, the bottom of the page has a link to a How-To page.
You should start with the MSDN topic here: Office Development
I would then be inclined to create an experimental Windows Console application and reference the relevant office COM libraries. Write code to manipulate the office COM objects with the benefit of intellisense, get some sembalence of the what the app really needs to do working.
Write a whole bunch of classes and methods which abstract the manipulations you ultimately want to perform in Silverlight from the actual mechanics of office object operations.
The port the code to Silverlight using the dynamic type, you lose all the intellisense on the COM objects of office but by this stage you've created a bunch of classes which once ported are what your real Silverlight code will use to do office operations.
The COM information is the same as what you would find in VBA so when I do internet searches i just look for information related to that.

Are ActiveX applets dead?

Are ActiveX applets as a technology supported by Microsoft dead?
What are the alternatives to ActiveX to create extremely rich internet applications using Microsoft Technologies? (Silverlight does not cut it for me, as it doesnt give me access to serial ports - or does it?)
You can of course still make ActiveX applications, but know that they will only work with Internet Explorer, unless users of other browsers install hosting plugins, that aren't all that good anyway.
In either case, a web application that requires access to a serial port? Are you sure you're not better off with a desktop application instead? A simple refresh and you've cut off that serial port.
Not all applications belong in the browser.
If you want to launch an application via a web browser that can access the serial ports, one option would be to use Java Web Start with JavaFX as the rich interface API, and Java Communications for the serial port access. You could end up with a cross-platform application at the end as well.
Or just write a native application using your favoured Windows toolkit if you absolutely are restricted to using Microsoft tools.
ActiveX as technology is very much alive, and will remain for many years to come. But its usage for Internet is dead. ActiveX is to be only used from within windows stand-alone applications.
ActiveX as of 2015 is a dead technology that even the maker is no longer interested in continuing to use it. Here is something to read.
No, Silverlight is designed from the ground up to be completely sandboxed, no way to bypasss that (thank god).
If you need that kind of access, but are looking for an easy deployment, I would suggest building a Clickonce application.
There are restrictions, because I think by default they are not full trust, but that's the best you will get.
It's also going to be the only easy route if you need printing (unless you are willing to round-trip to a server to generate a PDF file).
If you need direct access to some hardware (like for a POS software with cash drawer, receipt printer etc), you need to go "desktop". Clickonce can give you some deployment options, XBAPs can give you the "browser experience", but you are going to have to make compromises based on what your "hardware access needs" are.
EDIT:
I didn't notice the Silverlight exclusion in the original question. My comment it not really applicable. Sorry!
I don't know that I would call ActiveX dead just yet, but I would be cautious if you are planning to build an application based upon this technology. My recommendation would be to use Silverlight. This provides much of the functionality that is commonly desired in ActiveX controls, but uses the newer .NET technologies.
There is alot of talk about using Silverlight for media playback, but it has many powerful feature that can also be used to create Line-of-Business applications as well. In fact there is a great podcast episode on DotNetRocks that discusses this exact subject.
Here are a few more links that might point you in the right direction:
Microsoft Silverlight Getting Started
Silverlight 2 and a Glimpse of Silverlight 3 by Scott Guthrie
To the best of my knowledge, Silverlight 4 still doesn't give you direct access to serial ports, but it does give you access to any local web cam and microphones now. You could presumably also run Silverlight 4 out-of-browser, which gives you access to COM objects, and you could write a quick-and-dirty COM object which wrapped serial port access. That said, I also agree with what folks said above about not all applications belonging in the browser.

Resources