- PR -

同じEXEで複数起動した場合色を変える

投稿者投稿内容
さっちん
ベテラン
会議室デビュー日: 2006/09/13
投稿数: 64
投稿日時: 2008-04-03 10:35
同じEXEで重複起動が可能なものがあります。
1つめの起動では、背景色をグレー
2つめの起動は、背景色はブルー
というように同じEXEでも背景色を変更していきたいのですが
どういった方法がありますでしょうか???

思いついたのはデータベースに情報を持って判断する方法しか
思いつきませんでした。。。

開発環境は、WindowsXPPro VB2005です。

close dance
会議室デビュー日: 2008/03/28
投稿数: 9
投稿日時: 2008-04-03 11:56
System.Diagnostics.Process.GetProcessesByName("hoge")で
Process のコレクションが返りますので
Length を判断するというのはどうでしょうか。
mio
ぬし
会議室デビュー日: 2005/08/25
投稿数: 734
お住まい・勤務地: 神奈川県
投稿日時: 2008-04-03 11:56
VB6ではApp.PrevInstanceでできました。
.NETでどうすればいいかも、これを検索すれば出てきます。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2008-04-04 10:01
Mutex.WaitOne メソッドで判断します。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
さっちん
ベテラン
会議室デビュー日: 2006/09/13
投稿数: 64
投稿日時: 2008-04-04 15:36
みなさん返答有難うございます。
そうですね。簡単にできましたね!

しかしなんですが、、、1つ書き忘れました。

実は、この方法の場合
以下の順番の処理をした場合、うまくいきません
@1画面目をグレーで起動
A2画面目を青で起動
B1画面目を終了
C再度画面を起動すると、青で起動

青が2画面になってしまいます。
Cで起動したときはグレーで起動したいのですが
難しいでしょうか?
indigo-x
大ベテラン
会議室デビュー日: 2008/02/21
投稿数: 207
お住まい・勤務地: 太陽の塔近く
投稿日時: 2008-04-04 15:51
Win32APIのウィンドウ列挙(EnumWindows)ぐらいで
タイトルを取得します。
タイトルに何かを付加(本物など)を入れとけば
可能では。。。
rain
ぬし
会議室デビュー日: 2006/10/19
投稿数: 549
投稿日時: 2008-04-04 15:57
ちなみに、3つめ以降の画面は何色にするんでしょうか?
さっちん
ベテラン
会議室デビュー日: 2006/09/13
投稿数: 64
投稿日時: 2008-04-04 16:17
3つめは起動できないようにしており、
最大2画面までの起動です。

1番目がグレーで2番目が青
青画面のみが上がっているときは、次はグレーになります

スキルアップ/キャリアアップ(JOB@IT)