|
▼カッチャン さん:
おはようございます。
クライアントプログラムの欠点ですね!!
>1. メディアプレーヤーとウィンドーズメディアプレーとは同じ物ではないので
> しようか?(メディアプレーヤーの開始場面ではWindowsMediaPlayerの
> 表示がされるのに)
これは、違うコンポーネントということでしょうねえ!!
>2. Windows2000、Office2000でウィンドーズメディアプレーを使う方法と
> WindowsXP,Office2003でメディアプレーを使う方法?。
>3. 出来たら両システムで共用できるようにするには(メディアプレーの使用に
> こだわらないのですが)どうしたら良いのでしょうか?
上記のふたつのシステムでの共用ということなら、
メディアプレーヤーコントロールを動的にアロケーションするという方法も
考えられます。
つまり、予めユーザーフォームにはメディアプレーヤーコントロールを配置せず、
UserForm_Initialize()イベントプロシジャー等で
コードによって配置する方法です。
これは、私の環境での話です(Win98&Excel2000とWin2000&Excel2002)が、
'================================
Private Sub UserForm_Initialize()
Dim cc As MSForms.Control
On Error Resume Next
Set cc = Controls.Add("MediaPlayer.MediaPlayer.1")
If Err.Number <> 0 Then
Set cc = Controls.Add("WMPlayer.OCX.7")
End If
cc.Visible = True
End Sub
このようにすると、存在するメディアプレーヤーコントロールが配置されます。
もちろん、その後のコードも配置されたコントロールによってコードを分けなければ
ならない箇所もあると思いますけど。
実際の環境での
"WMPlayer.OCX.7"等のProgidが分からなければ、
シートにメディアプレーヤーコントロールを貼り付ける操作をマクロの記録を行って見てください(コントロールツールボックスのコントロールの選択というアイコンをクリックして、メディアプレーヤーコントロールを探してください)。
これにより、作成されたコード内にProgidを発見できると思います。
但し、環境はどんどん変わっていきますから、上記のコードだと応急処置にしかなりませんけどね。
|
|