問題タブ [windows-api-code-pack]

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.

0 投票する
1 に答える
474 参照

c# - WindowsAPICodePack の CommonSaveFileDialog での InvalidOperationException

WPF で WindowsAPICodePack の CommonSaveFileDialog を使用して、ユーザーにファイル名を尋ねています。ダイアログを閉じる前にファイル名を確認するために、FileOk のハンドラを用意しました。しかし、FileName プロパティを取得しようとすると、ダイアログが閉じられる前にこのプロパティが使用できないことを示す InvalidOperationException がスローされます。

FileOk ハンドラーで、ユーザーが選択または入力した完全なファイル名を取得するにはどうすればよいでしょうか?

0 投票する
1 に答える
959 参照

c# - タスクバー ジャンプリストを削除しますか?

それで、Windows API Code Pack for Microsoft .NET の JumpLists をいじっていたところ、ちょっとした問題が発生したようです。

コードを削除または編集した後、ライブラリ自体を参照して削除しても、ジャンプリストは残ります。ジャンプリスト コード

私が知りたいのは、この JumpList をプログラムから削除するにはどうすればよいですか? (画像は、編集されたコードと、以前に存在したコードであった結果を示しています)。

0 投票する
1 に答える
1480 参照

.net - WinAPICodePack の TaskDialog が .NET 4.0 で機能しない

私はアプリケーションを作成していて、TaskDialogIndirect関数を使用したかったのですが、大量の P/Invoke などを書きたくなかったので、WinAPICodePack を含めました。ただし、問題が 1 つあります。のコントロールを作成TaskDialogしてダイアログに追加すると、すべて正常に動作します。ただし、Showメソッドを実行するOverflowExceptionと、mscorlib が発生します。これを追跡して、いくつかのポインター処理とマーシャリングにたどり着きました。

コードを試してみると、DLLを .NET 3.5 およびインクルード アプリTOO用にコンパイルする必要があることがわかりました。アプリを .NET 4.0 で使用すると、このエラーが発生します...回避策についてのアイデアはありますか?または、このエラーを再現できますか?

もう 1 つの問題は、Iconプロパティを好きなように設定できることですが、アイコンがまったく表示されません。Openedアイコンを動的に設定するイベントをセットアップする必要があります...

情報: Windows 8 Pro x64 RTM で Visual Studio 2012 RTM を実行しています。アプリケーションは標準の WPF アプリです。

サンプルコード:

0 投票する
4 に答える
4206 参照

c# - 存在しないサムネイルへのアクセス

コンピューター内のファイルのリストを表示するアプリケーションを作成しました。リスト内の項目をクリックすると、その横にある小さな PictureBox に対応するファイルのサムネイルが表示されます。Windows 7 で C# を使用しています。

サムネイルを取得するために、別の質問に投稿された方法を繰り返しました。まず、Windows API コード パックを参照します。次に、次のコードを使用します。

これは常に機能するとは限りません。表示されるサムネイルが単に「既定のアプリケーション」アイコンである場合があります。実際のサムネイルは、Windows が以前にそのファイルのサムネイルを生成してサムネイル キャッシュに保存した場合にのみ表示されることがわかりました。これは、フォルダーを手動で開き、Windows が各ファイルのサムネイルを生成するのを待つ必要があることを意味します。その後、アプリケーションはそれらのサムネイルを表示できるようになります。

Windows 7 で使用する前に実際のサムネイルを生成するようプログラムに強制するにはどうすればよいですか?

アップデート (by Li0liQ)

FormatOption を追加することで、サムネイルの取得を強制することができます。

ただし、サムネイルがまだない場合は例外が発生します。

現在の ShellObject に有効なサムネイル ハンドラがないか、この特定のシェル オブジェクトのサムネイルの抽出中に問題が発生しました。---> System.Runtime.InteropServices.COMException: クラスが登録されていません (HRESULT からの例外: 0x80040154 (REGDB_E_CLASSNOTREG))

Windows エクスプローラーでファイルのサムネイルを更新するにはどうすればよいですか? を参照してください。潜在的な手がかりの質問とコードスニペット。

0 投票する
2 に答える
3617 参照

python - ウィンドウ内のプロセスによって開かれたファイルの名前?

ウィンドウ内のプロセス(PID)によって開かれたファイルの名前を出力する方法は? または、すべてのプロセス (PID) が現在ファイルを開いています。
Process Explorerは、同じように機能するユーティリティです。しかし、言及されていないのはどのように機能しますか?Windowsに存在する/ procファイルシステムのようなものはあります か?

Python で 2 つのソリューションを取得しました:
1. import psutil
2. import win32api, win32con, win32process

しかし、それはまだ私への質問です!
1. これらのライブラリはどのように機能しますか?
2. この情報を保持するレジスタ、メモリ、または仮想ファイル システムはありますか?

ウィンドウで可能な場合、この情報がタスク マネージャーに表示されないのはなぜですか?

0 投票する
1 に答える
2922 参照

c# - シェルメタデータプロパティからアナモルフィックビデオの表示サイズを取得する

Microsoft.WindowsAPICodePack.Shell.ShellFileファイルパスからビデオサイズ(幅と高さ)を取得するために使用しています。

問題は、このメソッドがm4vファイルの正しいサイズを取得しないことです。何か提案はありますか?実際の幅/高さを取得するために何を使用できますか?

例:実際のサイズが856x480のm4vビデオがあります

  • Windowsエクスプローラーでファイルのプロパティを見ると、サイズは720x480(間違っています)です。
  • ビデオプレーヤーでビデオを開くと、ビデオの詳細に720x480のサイズが表示されていても、ビデオは正しいサイズでレンダリングされます。
  • WPFのMediaElementコントロールにビデオを読み込むと、を介して正しいサイズを取得できますmediaElement.NaturalVideoWidth, mediaElement.NaturalVideoHeightが、問題は、WPF参照がないクラスライブラリでサイズを取得する必要があることです。
0 投票する
1 に答える
1104 参照

c# - ウィンドウが非表示になった後、タスク バーの進行状況バーが表示されない

C# (Net 3.5) で Windows 7 のタスクバー アイコンにプログレス バーを追加しようとしています。これを実現するために、Windows API Code Pack を使用しています。

これは正常に機能しますが、ウィンドウが最初に表示されたときだけです。トレイアイコンが存在するため、ウィンドウを最小化するオプションがあり、ウィンドウは削除されます。ウィンドウが再度表示されると、プログレスバーを再度オンにすることはできません。

ユーザーがウィンドウを最小化したときに実行されるコード:

そしてそれが正常に戻ってきたとき:

プログレスバーのオンとオフを切り替えても機能しません。

プログレスバーを再度表示するにはどうすればよいですか?

0 投票する
1 に答える
1704 参照

c# - CommonFileDialog をフォルダおよびファイル ピッカーにカスタマイズする

C# でファイルとフォルダーのダイアログを作成しようとしています。(ただの警告:私はすべてFolderBrowserDialogの提案に反対票を投じます。そのダイアログは自然の忌み嫌うものです)

現在CommonOpenFileDialog、プロパティを持つ WindowsApiCodePack にある を使用していますIsFolderPicker。これにより、ダイアログはフォルダー ピッカーのみになります。しかし、ユーザーがファイルまたはフォルダーのいずれかを選択できる必要があります。

そこで、ファイルとフォルダの両方を選択できるダイアログを探しています。手段は問わない。C#、WPF、WindowsApiCodePack、Ookii ダイアログ、C++、P/Invoke、Com+、Win32、VB など...

C# から呼び出すことができ、デフォルトの Windows OpenFileDialog の外観を持つ、ファイルまたはフォルダーを選択できるコントロールが必要なだけです。これは可能ですか?

0 投票する
2 に答える
400 参照

c# - IEのようにタスクバーにプログラムのタブを表示する方法

Windows 7および8では、タスクバーのプレビューに複数のタブを表示できます。

IE、FireFox、...などの一部のプログラムでは、タスクバーにすべての内部タブを表示できます。

FireFoxの複数のタブタスクバーのプレビューサンプル。

この機能を使用できるWPFプログラムを作成したいのですが、Windows APIコードパックで使用できることはわかっていますが、このためのサンプルはありません。

いくつかの体は私を助けることができますか?