問題タブ [comdlg32]

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

winapi - Windows XP、HKCU\...\LastVisitedMRU 許可されるアイテムの最大数?

現在のユーザーの次のレジストリ キーにエントリを追加するスクリプトをまとめる必要があるシナリオがあります。

このキーで許可される値の最大数を見つけようとしているので、スクリプトで別の値を最後に追加できます。値の名前はアルファベットの先頭から始まりますが、「Z」で終わるとは想定したくありません。

背景: 独自の (つまり、独自のものではなく、ソースにアクセスできない) アプリケーションを再パッケージ化し、デフォルトの [ファイル] -> [開く] の場所を設定しようとしています。面倒なスナップショットと File/Regmon セッションを何度も行った後、これが適切な方法のようです。私はそれが非常にハックであることを知っていますが、うまくいきます。理論を手動でテストしました。そうは言っても、アプリケーションがこれを行う独自のより優れたメカニズムを持っていないという仮定の下で、よりWin32に適した方法でこれを行う方法についての提案には、私は間違いなくオープンです.

0 投票する
3 に答える
6197 参照

comdlg32 - ComDlg32.ocxエラー:オブジェクトはこのプロパティまたはメソッドをサポートしていません

私は、HTMLとVBScriptを使用して、 ComDlg32.ocx(Commom Dialog Control)を使用してhtmlエディターを開発しています。私の正確な要件は、[開く]、[保存]、[色]、[印刷]、[フォント]のダイアログボックスを表示することでした。[ファイルの保存]ダイアログボックスを表示するコードを記述しました。また、LPKツールを使用してライセンスファイルをWebページに追加しました。

私のhtmlソースは次のようになります:

さて、ここに私のエラーがあります。[ファイルの保存]ダイアログボックスを表示するためにvbscriptを呼び出そうとすると、次のようなエラーが発生します。 オブジェクトはこのプロパティまたはメソッドをサポートしていません:'objComDlg.Filter'

objComDlg.Filterをコメントアウトすると、エラーはobjComDlg.DialogTitleに移動し、続行されます。

そして、私のVBScriptは次のようになります。

なぜこれが起こっているのか誰かが知っていますか?この特定のActiveXコントロールを使用するための適切なドキュメントはありますか?このエラーのため、現在の開発は停止しています。

ところで、私は開発にWindowsXPSP3とIE8を使用しています。

0 投票する
3 に答える
9535 参照

vb6 - WindowsServer2008で実行されているcomdlg32.ocxを必要とするVB6アプリケーション

サーバー2008マシンで実行する必要があるレガシーvb6アプリケーションがあります。アプリケーションが依存しているcomdlg32.ocxを登録できませんでした。助言がありますか?

0 投票する
3 に答える
1580 参照

internet-explorer - コモン フォント ダイアログ (comdlg32.ocx) が Windows 7 で IE の JavaScript から呼び出して動作しない

フォーム アプリで VB6 のフォント ダイアログを試してみたところ、フォント ダイアログを起動できましたが、JavaScript で同じことをしようとすると、次の例外で失敗しました。

エラー 800a8000 のため操作を完了できませんでした

ShowFont() を呼び出す行で。

ここに私のHTMLコードがあります:何かアイデアはありますか?

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

vb6 - Internet Explorer 9 (IE9) が ActiveX フォーム (例: コモン ダイアログ (comdlg32.ocx)) を閉じるとハングする

私のイントラネット アプリでは、ユーザーは CommonDialog ActiveX コントロール (comdlg32.ocx) を使用して参照および印刷できます。これはIE6-IE8でうまくいきました。

IE9 クライアント マシンでは、通常どおり共通ダイアログが表示されますが、[OK] または [キャンセル] をクリックしてダイアログを閉じると、ブラウザがハングします。ブラウザーは、共通ダイアログがまだ開いていると認識しているかのようです。これは comdlg32 に限定されず、私たちが使用する他の A​​ctiveX コンポーネントにも影響します。

ただし、 Alert(); を呼び出すと、commondialog を呼び出した後、ブラウザーはハングしません (ユーザーがキャンセルをクリックした場合は少し面倒です)。

HTML ダイアログは正常に動作します。

この問題を明確にするために、commondialog の object タグと、次の JavaScript 関数を呼び出す HTML ボタンを含む単純な HTML ファイルを作成しました。

関数 saveFile() { dialog.ShowSave(); }

私はそれを解決しようと一週間を費やしたので、誰かがここで助けてくれることを本当に望んでいます!

PSさまざまなクライアントマシンでwindows 7を使用しています(vistaも試しました)IE9。

ありがとう

ニック

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

vba - Comdlg32.ocx を自動インストールしますか?

comdlg32.ocx コンポーネントを含むフォームを含む Excel スプレッドシートをネットワーク共有に配布したいと考えています。

Windows 7 ユーザーは、このコンポーネントをインストールまたは登録していない可能性があります。Windows 7 でこのコンポーネントを自動的に確認してインストールする方法はありますか?

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

c++ - GetOpenFileName から UTF-8/Unicode 文字列を取得するにはどうすればよいですか?

Windows の共通ダイアログを使用する MinGW/C++ でアプリケーションを開発しています。ASCII 以外の文字が含まれている可能性のあるファイル名を収集する必要が生じました。ファイル名を Unicode またはできれば UTF-8 で取得するためのフラグまたは別のオプションはありますか?

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

vb.net - Visual Studio 2008 が VSS 2005 でクラッシュする

VSS 2005 をインストールし、VS 2008 プロジェクトを追加しました。[ファイル] --> [プロジェクトを開く] を選択してプロジェクトを開こうとすると、左側で [ソース セーフ] を選択し、.sln または .vbproj に移動すると、イベント ログにエラーが表示されずに Visual Studio が即座に終了します。

devenv /clean を実行してから /safemode を実行しようとすると、イベント ビューアーに次のエントリを含むエラー ダイアログが表示されます。

以前にこの問題を経験したことがありますか、または解決策はありますか? いつもの場所を試してみましたが、これまで手ぶらでやってきました。

ありがとう!

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

java - Swing アプリで JNA を介して GetOpenFileName を呼び出すと失敗する

JNAを使用してcomdlg32関数を呼び出し、JavaでネイティブのWindowsファイルダイアログを使用しようとしていますGetOpenFileNameOpenFileDialog.display次のような静的メソッドを作成しました。

選択したファイルを返すか、ユーザーがダイアログをキャンセルした場合は null を返す必要があります。

2 つの簡単なテスト プログラムがあります。これは期待どおりに機能します:

ただし、これは次のことを行いません。

後者の例では、 MSDN によるとCommDlgExtendedError2 が返されます。

CDERR_INITIALIZATION 0x0002

初期化中にコモン ダイアログ ボックス関数が失敗しました。このエラーは、十分なメモリが利用できない場合によく発生します。

...これはあまり役に立ちません。ここで何が間違っていますか?


他のソースを PasteBin に置いたので、質問が雑然としすぎないようにしました。

OpenFileDialog: http://pastebin.com/HDmu0TjX

ComDlg32JNA: http://pastebin.com/X5F5LLip

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

windows-7 - アンロードされた comdlg32.dll によって引き起こされる MFC SDI アプリケーションのクラッシュを回避する方法は?

MFC9 (VC2008) に対して構築されたアプリケーションがあります。アプリケーションは SDI アプリケーションであり、InitInstance() 中にファイルを開くダイアログを表示します。そのダイアログを表示すると、comdlg32.dll が読み込まれます。数分後、comdlg32.dll が自動的にアンロードされます。この後、DLL に依存する次の関数がクラッシュします。

どうすればこれを回避できますか? DLL の自動アンロード/ロードを制御するものは何ですか?

詳細情報:

  • 同じアプリケーションを使用する WinXP では、この問題は発生しません。
  • Win7 では、この動作は今年の初めから発生しただけです。MFC の更新がこれに関連している可能性がありますか?
  • 小さなテスト アプリケーションでは、問題のある動作は見られません。必要に応じて comdlg32.dll が再ロードされます。
  • MDI アプリケーション (http://support.microsoft.com/kb/173261) の InitInstance() でモーダル ダイアログを使用することは推奨されないという Microsoft の声明を見つけました。ただし、SDI アプリケーションはあります。
  • comdlg32.dll を直接使用することはなく、MFC を介して間接的にのみ使用します。