問題タブ [shell32]

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 投票する
2 に答える
720 参照

c# - プログラムでコンパイルされたプログラムで shell32.dll を参照しますか?

ショートカットを作成するには、プログラムに shell32 が必要です。

これは私のコードです:

これを行うと、エラーが発生します:

メタデータ ファイル C:\Windows\System32\Shell32.dll を開けませんでした。不正な形式のプログラムをロードしようとしました。

検索中に何も見つかりませんでした..何を検索すればよいかさえわかりませんでした:/

どうすればこれを行うことができますか?

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

c# - c# Shell32 zip / unzip コード、CopyHere が機能しない

Shell32 CopyHere メソッドに問題があります。

まず、このページから作業しています: http://www.codeproject.com/Tips/257193/Easily-zip-unzip-files-using-Windows-Shell32

VB.NET でほとんど作業したことがないという理由だけで、C# で似たようなものを書き直したいと思っていました。

テストとして、1 つのテキスト ファイルを含む入力ディレクトリ i を渡します。下部に、実際にファイルを取得していることを確認するために、input.Items() のカウントを書き込み、1 を取得したので、1 つのテキスト ファイルを含むディレクトリが表示されていると思います。ただし、私のコードは空の zip ファイルを正常に作成し、少なくともそのコンソール出力からファイルを取得しているように見えますが、実際には zip ファイルに何もコピーしません。エラーはスローされません。何も起こらないかのようです。

Shell32 メソッドの使用方法に何か問題がありますか?

編集:

返信が遅くなってすみません。DJ Kraze が作成したコードの一部を使用しようとしています。

いくつかのことを明確にするために、残念ながらサードパーティのツールを使用できず、.NET 4.0 を使用しています。DJ のアドバイスを受けて、VB バージョンまたは彼が親切に投稿した C# のいずれかが機能するかどうかを確認します。

みんな助けてくれてありがとう。

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

c# - ファイル アイコンの現在のオーバーレイ

私は今、約 5 時間インターネットを探し回っています。旅の途中で、この質問が答えられていないことが何度かありました。

ファイルの現在のアイコンオーバーレイに関連する情報をリモートでも生成できる言語を使用したいと考えています。以下の画像は、私が話しているオーバーレイを示しています。

同期中

完了

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

vb.net - vb.net用のShell32ファイル抽出スクリプト

配布用の vb.net スクリプトを作成していますが、問題が発生しました。スクリプトは、EXE にビルドしているため、ウイルス対策をトリガーせずに、COM 参照の Shell32 ライブラリを使用して zip ファイルを抽出できません。vb.net 内のファイルを抽出するためのより良い方法や、これは分散プログラムになるため、ウイルス対策がスクリプトを削除しない方法を誰かが知っているかどうか疑問に思っていました。

ウイルス対策を無効にすることは解決策ではないため、提案しないでください。

0 投票する
0 に答える
140 参照

com - SHGetFileInfo は、SHGFI_ICON の使用時にヒープ破損を引き起こす

テスト中のプロセスでページ ヒープを有効にすると、SHGetFileInfo が呼び出されたときにヒープの破損が発生したことを示すアクセス違反がトリガーされます。

コール スタックの一番上には msvcr90!wcspbrk が表示され、さらに下に進むと、SHGetFileInfo を呼び出す shell32 に到達するまで、ole32 内の COM 関連のアイテムが表示されます。

私がオンラインで見つけたものによると、shell32 を使用した奇妙さの一般的な問題は、最初に CoInitialize/CoInitializeEx を呼び出さないことですが、この時点で CoInitializeEx() は既に呼び出されており、以下のコードの直前に呼び出すと S_FALSE が返されます。

以下のコードは、.NET から PInvoked された DLL 内にあります (コードは、特定のファイルに使用されるアイコンを取得するために使用されます)。

(ここで、logfile.txt はルート ドライブ上のランダム テキスト ファイルです)

簡単にするために、最初のパラメーターをマシン上のファイルにハードコードしました。

64 ビット Windows OS を使用していますが、コードは 32 ビット コンテキストで実行されます。SHGetFileInfo のナロー バージョンを使用すると、同じ結果が得られます。

プロセスのページ ヒープを無効にしても問題はありません。

フラグ SHGFI_ICON を使用しない場合、問題は発生しません。

編集: @HansPassant は、再現可能なサンプルを追加するよう要求しました。これは、問題を示す Visual Studio 2010 Win32 コンソール アプリケーションへのリンクです:サンプル

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

c# - shell32 GetDetailsOf として取得された文字列は、同じように見える「==」のハードコードされた文字列ではありません。DateTime.Parse で解析できません

私の本当の目的は、Shell32 GetDetailsOf Extended 日付フィールドから日付文字列を DateTime.Parse することです。デバッグを進めながら、同じように見える文字列を作成しただけで、DateTime はそれを解析できます。メモリ内の 2 つの文字列を表示すると、異なって表示されます。

最初の数バイトだけ.....

s > 4c 22 2e 63 16 00 00 00 0e 20 39 00 2f 00 0e 20 35 00 2f

q > 4c 22 2e 63 11 00 00 00 39 00 2f 00 35 00 2f 00 32 00 30

DateTime.Parse で解析できるように文字列をフォーマットする方法はありますか?

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

java - Windows での Java アプリケーション jna のドッキング

画面のセクションを予約して、他のアプリケーションがそのスペースに表示されないようにする Windows ドッキング可能アプリケーションを構築しようとしています。

JNIとJNAを使ってみました。上記のコードは、私がどこまで到達したかを示しています。

実行すると、フレームが表示されますが、エラーや間違っていることのヒントは出力されません。

私は JNA を使い始めたばかりで、初歩的な間違いを犯している可能性があることに注意してください。それらを自由に吸ってください。