デバイス カメラを使用する Motorola MC9500 シリーズ用のアプリケーションがあります。
Imager を初期化するには、次の方法を使用します。
Symbol.Generic.Device MyDevice;
int i = 0;
if (imager == null)
{
MyDevice = (Symbol.Generic.Device)Symbol.Imaging.Device.AvailableDevices.GetValue(0);
for (i = 1; MyDevice != null; i++)
{
if (MyDevice.FriendlyName.Equals("Image Capture Driver for Color Camera"))
break;
MyDevice = (Symbol.Generic.Device)Symbol.Imaging.Device.AvailableDevices.GetValue(i);
}
if (MyDevice == null)
{
MessageBox.Show("Camera não foi encontrada.");
this.Close();
return;
}
imager = new Symbol.Imaging.Imager(MyDevice);
}
WM6.1 では問題なく動作しますが、最後の行で次の例外がスローされる WM6.5 では動作しません。
イメージャの作成に失敗しました: IMAGE_Open に失敗しました: E_IMG_INVALIDDEVICE
製造元のドキュメントによると、これは「物理デバイス ドライバー (PDD)。DLL に必要なエントリ ポイントが含まれていませんでした。」という意味です。ただし、すべてのドライバーを最新の状態にしています。それらは次の場所にあります: http://support.symbol.com/support/search.do?cmd=displayKC&docType=kc&externalId=12683&sliceId=&dialogID=469856149&stateId=1%200%20469852171
プログラムを実行しているとき、他のタスクは実行されていません。これは、別のプロセスがカメラを自分自身にロックしていることが原因である可能性があると考えたからです。
関連する事実は、カメラを使用する他のアプリケーションでは、カメラが動作/起動しないように見えることです。ただし、クライアントのデバイス (WM6.5、同じデバイス) でも動作するようです。
なぜこれが起こるのか、またはそれを解決する方法について、誰かが何か提案や考えを持っていますか?