This is not really an alternative but a different approach if you need the user to take multiple pictures in one session and then return to your application.
The code starts the Camera application in background and waits for the minimise/close of the Camera dialog. If you first launch the camera using “pimg.exe -camerakey” the camera dialog shows a live preview (liveview). If you press the Enter key, you will get a snapshot and the camera dialog shows a preview of the image (imageview).
The screenshot for liveview does not show the real preview.
If you click (OK) in liveview, the dialog is hidden. If you click (OK) in imageview the liveview is displayed.
The demo app shows only two buttons and a listbox.
When you click [Start], the pimg.exe is started and comes into front. The showCamera application remains in background and waits for the ‘exit’ of the camera application.
showCamera also uses
FileSystemWatcher (opennetcf) to watch for the new photo files taken. When the camera app is ‘closed’, a listbox shows the new photos.
Attached is the full C# source code (VS2008, WM 6.5.3, CF3.5) including a binary.