WMIにてUSB情報を取得するプログラムを作成しています。
開発環境:Visual Studio 2008 / MFCアプリケーション
XPにてプログラムを作成し、当該データの取得に成功したため、
OSのバージョン別のテストを行ったところ、
XP、Vista SP1では成功し、Vista SP2、Windows7では失敗しました。
Visual StudioがインストールされているVista、Windows7が
無いため、正確なDebugが出来ていないのですが、
CoInitializeをし、CoInitializeSecurityをしたところで、
戻り値が失敗となり終了してしまっていました。
色々と調べてみたのですが、原因がまったくわかりません。
ちなみに、テスト機では管理者ユーザでログインし、
WMIコントロールで、アクセス権をチェックしてみましたが、
問題ありませんでした。
なにか、手がかりになるような事でも構いませんので、
アドバイスお願いします。
※失敗しているCoInitializeSecurity関数
hRes = CoInitializeSecurity( NULL, -1, NULL, NULL, RPC_C_AUTHN_LEVEL_DEFAULT,RPC_C_IMP_LEVEL_IMPERSONATE, NULL, EOAC_NONE, 0);
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
失敗した時の CoInitializeSecurity() の戻り値はどうなっているのでしょうか?
検証用にプログラムを作成して、MessageBox などで戻り値を確認できるようにして確認されてはいかがでしょうか。
試しに Windows7 にて、
int _tmain(int argc, _TCHAR* argv[])
{
HRESULT hRes = CoInitialize( NULL );
if( hRes == S_OK ) {
hRes = CoInitializeSecurity( NULL, -1, NULL, NULL, RPC_C_AUTHN_LEVEL_DEFAULT,RPC_C_IMP_LEVEL_IMPERSONATE, NULL, EOAC_NONE, 0);
}
if( hRes == S_OK ) {
MessageBox( NULL, _T("Success."), _T("Test"), MB_ICONINFORMATION );
} else {
MessageBox( NULL, _T("Failure."), _T("Test"), MB_ICONWARNING );
}
return 0;
}
というプログラムを、管理者ではない通常のユーザで実行してみましたけど、"Success." となりましたので、OS の問題という訳ではなさそうですね。
↓のページが何か参考になるかもしれません。
http://msdn.microsoft.com/ja-jp/events/dd253092. …
返答が遅れて申し訳ありません。
テスト機が他のプロジェクトで使用されていて、当分使えない状況となっております。
他に、Windows7が入っているPCを見つけたので、
それでテストしたところ、全く同じプログラムで
正常に挙動しました。
どうも、PCの設定等の問題かと思われます。
現象が起こったPCが空いたタイミングで、
設定周りを調べてみようかと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP DBのハッシュ化したパスワードをpassword_verifyで戻し照合したのですが上手く行きません 2 2023/02/06 13:24
- Wi-Fi・無線LAN PCWi-Fiの設定方法がわからなくて困っています。 4 2022/12/28 18:30
- 政治 責任 8 2023/05/06 18:00
- iPhone(アイフォーン) iPhone6からiPhonese(第二世代)引き継ぎ失敗しました。 LINEの引き継ぎ(データは直 3 2022/10/01 16:54
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- PostgreSQL DBFluteについて質問です。 環境:PostgreSQL java8 前提:webアプリケーショ 1 2022/07/07 00:49
- PHP クエリObjectをforeachで回す時に、次のレコードへ移動せずに次のレコードを取得したい 2 2022/07/28 15:29
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
- PHP 【PHP/MySQL】コード上で生成したクエリを基に集計クエリを作りたい 1 2022/07/28 15:06
- PHP isset — 変数が宣言されていること、そして null とは異なることを検査 1 2022/03/27 17:34
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コンソールアプリでファイル選...
-
API、OCX、DLLって何でしょう?
-
変数の大きさを超える代入
-
VB.net エラーメッセージを英文...
-
OSとCPUの関係について
-
Perl5とActivePerl
-
論理回路や全加算機の仕組み
-
プログラム解析について
-
C言語のHP-UXからLinuxへのポ...
-
php+mysqlのサーバを作ろうと思...
-
全豊田作業責任者
-
1年無職の彼氏 別れるべきですか?
-
機械工学専攻の院卒でSEになる...
-
6~7割の正解で、なぜ合格?
-
ホームページが削除されている...
-
VBで簡単なゲームをつくるサイト
-
HTMLのタグは閉じなくてもいい...
-
ローカル環境で検索機能を使うには
-
大学で得た知識がほぼゼロ、そ...
-
あいのり風のメッセージビデオ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
API、OCX、DLLって何でしょう?
-
VBプログラムをEXCEL VBAに移植...
-
SNMPトラップ情報をC#.netで作...
-
このプログラミング誰か教えて...
-
OSとCPUの関係について
-
コンソールアプリでファイル選...
-
UNIX環境でのCプログラム上でC...
-
Ryzen 3700(無印)はWin11に対応...
-
DLLってなに?
-
C言語のHP-UXからLinuxへのポ...
-
VB.net エラーメッセージを英文...
-
VBS:コンピュータ名を取得し、...
-
Sleep命令で指定した待機時間が...
-
Perl5とActivePerl
-
大至急!!! ピクトグラミング...
-
printf系の書式「w」ってなに?
-
サイクロイドの軌跡
-
初心者にEXCELのVBAを教えると...
-
三目並べ
-
小中学校でプログラミングなん...
おすすめ情報