問題タブ [wmplib]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
media-player - メディア プレーヤーの問題
COMライブラリ「WMPLib」に関するメディアプレーヤーを作っています プログラムは1つの形式で構成されていました。私は WMPPlayState Enumerable を利用しており、今までプレイリストとすべてでスムーズに実行されています。
しかし今、私はプログラムを 2 つの形式 (Winamp-idea) に分割することにしました:
Form1 = プレーヤー
Form2 = プレイリスト
もちろん、私はそれを機能させるためにいくつかのコードを再配置しました。これは、form2 の listBox から取得したものです (trackURL には public 修飾子があります)。
これは、form1 で TEST(string trackURL) メソッドを呼び出します。
問題は、明らかに、playStateChange がトリガーされないことです。このため、すべてが playStateChange Enumerator を通過するため、私のコントロールはどれも機能しません。プレイリストから選択した曲が意図したとおりに再生されています。しかし、それを制御することなく。ボリュームコントロールさえ機能しません。
どんな助けでも大歓迎です。
ごきげんよう、ダニー
c# - PlayStateChange の変更時に C# WindowsMediaPlayer が実行されない
アプリケーションの実行時に作成する WMPLib.WindowsMediaPlayer インスタンスがあります。プレーヤーの再生状態が「停止」のときにパネルを非表示にしたい。
これは私のコードです:
どんな助けでも大歓迎です。
winapi - WMP SDKを使用してコマンドを送信すると、Windows MediaPlayerUIが更新されない
WMPSDKを使用してWindowsMediaPlayerを制御しています。最初にWindowsMediaPlayerプラグインウィザードを使用して新しいプロジェクトを作成し、次に名前付きパイプを使用してアプリケーションと通信するコードを追加しました。たとえば、アプリケーションで音楽をミュートする必要がある場合、WMPプラグインにメッセージを送信してから、プラグインで音楽をミュートします。
それは機能し、コマンドを送信すると実行されますが、UIは更新されません。したがって、たとえば、ミュートコマンドを送信すると、音楽はミュートされます(音が出ません)が、ミュートボタンは音楽がミュートされていないかのように表示されます。これを証明するために、この時点でスキンを変更するか、別の曲にスキップすると、UIが更新され、ミュート状態が正しく表示されます。クリックするとミュートが解除され、ミュートされていない状態(現在は正しい状態)が再び表示されます。
たとえば、UIを強制的に更新する方法や、その他の回避策はありますか?
.net - IronPython による Windows Media Player インスタンスの制御に関する問題
.NET Windows Media Player ライブラリを使用して、Windows Media Player のさまざまなファイル プロパティ (ユーザー評価など) をプログラムで取得および変更することができました。Player.openPlayer(url)
同じライブラリを使用して、呼び出しを通じて Windows Media Player インスタンスを制御 (再生、停止、次へなど) したいと考えています。理論的には、これは Player.controls オブジェクトを介して非常に可能であるはずですが、アクセスしようとすると、どのコントロールも使用できません。コントロール オブジェクトを除いて、ほぼすべての Player プロパティ/メソッド/イベントを使用できます。私が試したことを説明するためのサンプルコードを次に示します。
これはうまくいきますが、次のようにすると:
コントロールごとに false になります。これらのコントロールが (単純な) アプリケーションで使用できないのはなぜですか? 私はおそらくこれについて間違った方法で進んでいますか?私は WMP 12 を使用しているので、互換性があるはずです。別の API を使用したくないのですが、現時点では何でも試してみたいと思っています。
参照用のドキュメントは次のとおりです。 http://msdn.microsoft.com/en-us/library/dd564034%28v=vs.85%29.aspx
編集:クイックフィックスは今のところ保持されていますが、実際の解決策はまだ見つかっていません.
c# - C# の WMP ライブラリ - リストからのプレイリスト
C# 用の Windows Media Player ライブラリについて知りました。友人のために馬鹿げた小さなアプリを作成しているので、それを追加しようと思いました (彼は音楽が大好きなので)。
プレイリストのインスタンスを作成しようとしましたが、その行を許可することができません。助けていただければ幸いです (「pth」文字列はメソッドの前半で宣言されていることに注意してください
c# - C# を使用して WMP から曲名を取得する
C# を使用して、現在再生中の曲の名前を取得して listBox に表示しようとしているため、再生中のすべての曲はリストボックスに表示されます。
しかし、それは私に例外をスローします。ここで「オブジェクト参照がオブジェクトのインスタンスに設定されていません」:
誰もこれを解決する方法を知っていますか?
c++ - WMP COMは、後続のユーザーのなりすましでは動作しません
現在ログオンしているすべてのユーザーのWindowsMediaPlayerライブラリにアクセスする必要があるWindowsサービスがあります。そのサービスなので、ログオンしたユーザーを偽装して、WMP COMへの呼び出しが偽装ユーザーのコンテキストで情報を返すようにする必要があります(つまり、システムのライブラリではなく、偽装ユーザーのライブラリを返します)。ログオンしているユーザーごとにこれを行う必要があります。
を介してスレッド内のユーザーを正常に偽装しImpersonateLoggedOnUser
、ユーザーのライブラリを取得してから、を実行することができますRevertToSelf
。次にログオンしたユーザーに対してこれを実行しようとすると、問題が発生します。WMP COMへの後続の呼び出しは、現在のユーザーが偽装されているのではなく、常に最初の偽装されたユーザーのライブラリを返すようです。
これが私がしていることの一般的な要点です:
c# - axwindowsmediaplayerで時間が変わったときにイベントを発生させる
私はWindowsアプリケーションを持っています。AxInterop.WMPLib dll にある axwindowsmediaplayer を使用しています。ビデオの再生に問題はありませんが、ユーザーがメディア プレーヤーをクリックして特定の時間に移動したときにイベントを発生させたいと考えています。dll ファイルを調べましたが、そのようなイベントは見つかりませんでした。ユーザーがビデオの別の時間に移動したときにイベントを発生させる方法について誰か助けてもらえますか?
ありがとう
c# - Windows N エディションでの WMPLib の使用
問題があり、その回避方法がわかりません。C# アプリケーション (C:\Windows\System32\WMP.dll にあります) で WMPLib を使用しました。私はそれを参照し、メイン フォームのコード ファイルのヘッダーに追加しました。
しかし、Windows N エディション (ここでは KN エディションもカウントされると思います) でアプリを実行しようとすると、動作が停止し、Windows に次のメッセージが表示されます。 .」。そのため、たとえば、ユーザーが Windows N エディションを実行しているときに、実行時にその DLL をインポートしないなど、これを回避する方法を見つけようとしています。私のアプリを Windows N ユーザーに再配布する方法がないのではないかと心配しています。
アドバイスありがとう、ヴァリ
c# - どのプレイヤーの再生中の曲のパスをどのように指定できますか?
どのプレイヤーの再生中の曲のパスをどのように指定できますか?
このエラーが発生します:
オブジェクト参照がオブジェクト インスタンスに設定されていません。