「夫を成功」へ導く妻の秘訣 座談会

Windows XPで動いていたWEBカメラ用VBAが Windows 8.1で動作しません。
対応方法をご存じの諸先輩に何卒ご教示いただきたく投稿いたしました。

症状は、接続しようとすると「ビデオソース」というウィンドウが表れ
ソースキャプチャのタブでビデオデバイスの選択というコンボボックス
が表示されます。
コンボボックスの表示内は「TOSHIBA Web Camera - HD」でおそらくPC
内臓のWEBカメラだと思われます。
また外部カメラを接続している場合はそのカメラと両方が選択可能な表
示となります。
そこでどちらを選択してOKを押しても「接続失敗・・・・・」のメッセ
ージ表示となります。
ただしPC立ち上げ後1回だけはこの選択画面がでず、内臓カメラの映像
が表示されるのですが2回目以降は前述の通りのエラーとなります。

VBAは次の通りです。

'Declare PtrSafe Functionの記述は省略します。

Private Sub CommandButton1_Click()
Dim MyHandle As Long
MyHandle = FindWindow("ThunderDframe", Me.Caption)
CapHandle = capCreateCaptureWindow("", WS_VISIBLE Or WS_CHILD, 0, 0, 640, 480, MyHandle, 0)
If CapHandle = 0 Then
MsgBox "作成失敗", vbOKOnly, "エラー"
Exit Sub
End If

'カメラ接続
If SendMessageAsLong(CapHandle, WM_CAP_DRIVER_CONNECT, 0, 0) = 0 Then
Call DestroyWindow(CapHandle)
CapHandle = 0
MsgBox "接続失敗 他のポートを選択して再度クリックしてください。"
Exit Sub
End If

SendMessageAsLongの第3引数を変えても同じ症状です。
ご教示よろしくお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

WEBカメラのメーカーサイトにWindows 8対応ドライバがないか探してみては?


(デバイスマネージャで該当のデバイス右クリック「プロパティ」「ドライバ」「削除」再起動でWindows汎用ドライバを再生成し認識することがあります→古いWEBカメラはメーカーがドライバを最新のWindows 8対応にアップデートしない場合もあります)
    • good
    • 1

カメラのメーカーや型式が解れば、


そこから、「ドライバー」を「DL」してみる事は可能ですか?
    • good
    • 2

デバイスマネージャが(!)になっていないですか。


WindowsXPで使えていても、Windows8.1では無効なデバイスが多々あります。
(!)が有りましたら、一旦削除して、WEBカメラを繋いだままで、ハードウエアの変更を実行してみてください。
あまり。回答の参考になっていないですが
    • good
    • 2
この回答へのお礼

つらい・・・

ご回答ありがとうございました。
質問の記述が悪かったと思います。XPで使用できたWEBカメラが8.1で使用できなく
なったのではなく、VBAがうまく動いていないようです。
今回、購入したWindows8.1のPCに内臓されたカメラでも、外付けしたWEBカメラでも
同じ症状です。
またPC起動後、最初の1回は内臓カメラの画像も外付けWEBカメラの画像も表示され
るのです。(ドライバの問題ではないと思うのですが・・・・)
2回目以降は、質問で記述したエラーとなります。
EXCELのブックを一旦閉じて再度やり直してもカメラ選択画面が出て同じエラーとな
ります。
PCを再起動して同様の事を実行すると1回だけ正常に画像が表示されます。
以上のような症状です。よろしくご教示お願いいたします。

お礼日時:2015/06/16 21:23

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QUSBカメラを制御できるライブラリ

USBカメラを制御できるDLLか、ActiveXはありませんか?

Aベストアンサー

※これはマルチにいけるのかな?

#2のtodo36さんの参考URLの一つ
[USBカメラのTWAIN制御について]
http://okweb.jp/kotaeru.php3?q=505982


※参考URLの#1さんが、よい発言をしております。
カテがCですが^^;

[USBカメラを使った動体検知ソフトの開発をやっているのですが・・・]
http://okweb.jp/kotaeru.php3?q=942547

QUSBカメラからDirectShowを使っての静止画の取得について

USBカメラの映像をプレビュー表示して、任意のタイミングで静止画を取得するプログラムを組んでいるのですが、どうもうまくいきません・・・。

環境は
使用言語:VB.NET
USBカメラ:Logicook Qcam E2500
です。

動画ファイルとして保存するのは、Graph Editでピンの繋ぎを確認→プログラミング でなんとかできたのですが・・・
それと、GetCurrentImageを使ってキャプチャしようとしたんですが、この関数がどうもVB.NETでは使えないらしく、他に良い方法があれば教えていただきたのですが・・・よろしくお願いします。

Aベストアンサー

すごいタイミングですね。
自分も最近、DirectShowを使って静止画のキャプチャとかをし始めました。
自分が見つけたページでよければ参考にしてください。
(自分は使用言語がC#なんで参考になるかわかりませんが・・・)
USBカメラをC#で使おう:http://mobiquitous.com/programming/usbcamera.html
DirectShowのビデオキャプチャプログラミング:http://vision.kuee.kyoto-u.ac.jp/~hiroaki/firewire/directshow.html
DirectShowを切る:http://hammer.prohosting.com/~arabo/DirectShow.shtml
DirectShowによる各種メディア形式の再生:http://www.limber.jp/tomo/data/ds.html


人気Q&Aランキング