他のアプリケーションから他のアプリケーションのリストビューに値を表示するには

解決


亜鉛  2007-02-04 05:52:21  No: 97867

メインとなるアプリケーション(Main)から長い処理を行うアプリケーション(Sub)を実行します。この時Sub側で行った処理の結果をMainのリストビューに表示させたいのですが、Main側では常にユーザーからの操作を受け付けられるようにしたいので、リストビューに表示する処理を行うことは避けたいのです。
何かいい方法はないでしょうか?よろしくお願いします。


ガッ  2007-02-04 12:38:24  No: 97868

とりあえず環境をお願いします。


通ってみた  2007-02-04 15:07:21  No: 97869

古い方法ならDDEとか

「DDE」で検索するだけでいろいろ出てくるのでオススメ


亜鉛  2007-02-04 21:23:01  No: 97870

>>とりあえず環境をお願いします。
開発環境はVisual Studio6.0で
リストビューはCommon Controls5.0を使用します。

>>古い方法ならDDEとか
過去ログ何個か見てみましたけど
DDEは値の受け渡しとかでよくでてきていますね。
SubからMainのコントロールを操作することもできるのでしょうか?
Visual Studioのヘルプ入ってないんですよね・・・・ふぅ・・


通ってみた  2007-02-04 21:48:12  No: 97871

リストビューに表示するって事は、結構データ量もそこそこあるようですから、

1.Subでデータを選出し、ファイルとして吐き出させる
2.SubからMainに「データ選出したよ」と通知を出す
3.Mainが通知を受け取ったらデータファイルを読み込んで表示

とかどうですか?


亜鉛  2007-02-04 22:35:59  No: 97872

確かに、Main側でリストビューを描画することになってしまうが
ループ処理の間にDoEventを書くことによって
ある程度のユーザーの処理を受け付けることはできる。
これもひとつの方法かもしれませんね。
対策のひとつとして検討してみます。


通ってみた  2007-02-05 12:19:56  No: 97873

データが何万あるのかわかりませんが、既に用意されているデータをリストビューに追加していくだけならそんなに時間がかかるとは思えません


亜鉛  2007-03-03 07:30:38  No: 97874

データのやり取りのためにわざわざファイルを作るのは避けたいので
VC++で共有メモリを作ってアクセスしてみようと思います。


我龍院  2007-03-03 17:33:15  No: 97875

>VC++で共有メモリを作ってアクセスしてみようと思います。
メモリマップドファイルのことですか、もしそうだとしたら
同期を取るのが面倒ですね。

他のアプリでの処理結果をSendMessageでMainに渡す方法が有ります。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加