デスクトップ アプリケーションから Windows CE デバイスにアクセスするために、私は自分で作成した DLL を使用しました。この DLL は、デバイス側で必要な関数を呼び出すために RAPI を使用していました。何年もの間、すべてがうまく機能しています。
しかし今、この DLL を Windows サービスで使用したいと考えました。そして、それは失敗しました。デバッグは、失敗したのは CeRapiInitEx() 関数であることを示しています。また、失敗する前に約 5 秒間ブロックしますが、MSDN は非同期の非ブロック関数であると述べています。GetLastError() で 1444L "Invalid thread identifier" が表示されます。
インターネット上の誰かが、ActiveSync 4 のサービス スレッドから RAPI が機能しないと述べました。
誰かが同じ問題を抱えているか、何か言いたいことがありますか? Windows サービスから RAPI にアクセスできないというのは本当ですか? もしそうなら、回避策はありますか?