二重起動(外部アプリ) – プログラミング – Home

二重起動(外部アプリ)
 
通知
すべてクリア

[解決済] 二重起動(外部アプリ)


chop
 chop
(@chop)
ゲスト
結合: 23年前
投稿: 5
Topic starter  

はじめましてchopと申します
宜しくお願いします。
いきなりですが質問です。
外部アプリケーションの二重起動防止は出来ないのでしょうか?
出来るとしたらどのような方法があるか教えて下さい。


引用未解決
トピックタグ
アイススケーター
 アイススケーター
(@アイススケーター)
ゲスト
結合: 23年前
投稿: 280
 

↓にMutexを利用した方法が掲載されています。

http://hp.vector.co.jp/authors/VA000092/win32/misc.html#instance

この手の内容はよくさがせばありますので、YAHOO等で一度検索しましょう。


返信引用
chop
 chop
(@chop)
ゲスト
結合: 23年前
投稿: 5
Topic starter  

Mutexは自分のアプリケーションの二重起動しか出来ないと聞きましたが。
できるんですか?


返信引用
a
 a
(@a)
ゲスト
結合: 23年前
投稿: 59

返信引用
wood
 wood
(@wood)
ゲスト
結合: 23年前
投稿: 895
 

起動する側は何使って(関数)外部アプリ起動しているの

発言される前に「使用上の注意」を必ずお読み下さい。


返信引用
アイススケーター
 アイススケーター
(@アイススケーター)
ゲスト
結合: 23年前
投稿: 280
 

>Mutexは自分のアプリケーションの二重起動しか出来ないと聞きましたが。
>できるんですか?

起動される側で排他をとればいいですよ。

その他に
 ・起動する側で管理したい場合はフラグを利用する。
 ・起動する側で起動するアプリの数を制限する場合は、カウンタを利用する。

このような内容ではだめですか?


返信引用
chop
 chop
(@chop)
ゲスト
結合: 23年前
投稿: 5
Topic starter  

スミマセンでした 遅れましたが 開発環境 VC6.0 MFC です。

起動する関数はShellExecuteです>woodさん

排他を取るというのはどういう事でしょうか?
VC初心者なので良く分らないのですが・・・。


返信引用
chop
 chop
(@chop)
ゲスト
結合: 23年前
投稿: 5
Topic starter  

OSは Win NT4.0 です。記入忘れです。
毎度スミマセン。


返信引用
a
 a
(@a)
ゲスト
結合: 23年前
投稿: 59
 

http://google.yahoo.co.jp/bin/query?p=%c6%f3%bd%c5%b5%af%c6%b0%a1%a1%c7%d3%c2%
be&hc=0&hs=0

上のページの上から3番目の項目なんてどうかな?
役に立たなかったら申し訳ない。


返信引用
アイススケーター
 アイススケーター
(@アイススケーター)
ゲスト
結合: 23年前
投稿: 280
 

>排他を取るというのはどういう事でしょうか?

排他はMutexやセマフォを利用して行うものです。

↓に掲載されています。

http://yougo.ascii24.com/gh/16/001652.html


返信引用
dairygoods
 dairygoods
(@dairygoods)
ゲスト
結合: 23年前
投稿: 1421
 

ShellExecuteで別のアプリケーションを起動する時に、
前回ShellExecuteで起動したアプリケーションがまだ動いていたら
2つ目を起動しない、ということですか?

それならば単純にFindWindowで該当する別アプリケーションを探して、
有無を調べればよいでしょう。


返信引用
chop
 chop
(@chop)
ゲスト
結合: 23年前
投稿: 5
Topic starter  

皆さんありがとうございました。
FindWindowでウィンドウタイトルを入れてやって
ハンドルが0だったら起動するみたいな処理を入れたら
出来ました。
お世話になりました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました