Re: ソフトの二重起動について ( No.1 ) |
- 名前:さげ 日時:2012/12/19 20:18
シングルクリックでダブルクリック感覚でカチカチやって2つ起動しないようにしてるかもしれませんねw
ブラクラじゃないですけど延々立ち上げてクラッシュさせるのを防止とか。
(まあ某makerは重いにもかかわらずイライラ連打するといくつも立ち上がりますが。。
ただ1個目のログに上書きしてるので1個目のログは分かりませんけどね…
|
Re:ソフトの二重起動について ( No.2 ) |
- 名前:ぱんな 日時:2012/12/21 08:14
恐らくですが2重起動は好ましくないので立ち上がらないようにしてると思います。
メモリを食いますし2個同時に動かすのはCPUにも負担がかかりますし、そうなると処理能力が低下するからではないでしょうか?
同じソースコードをA.exeとB.exeで全く別物としてコンパイルしAとBを起動なら出来るのかもしれませんね。
|
Re: ソフトの二重起動について ( No.3 ) |
- 名前:コナン 日時:2012/12/21 15:45
2重起動防止ですか・・・。
ちなみに私が用意した2つのソフトウェアはDxライブ
ラリを使用しているという点以外は全く異なるもの
です(ファイルの共有とかはしていません)。
例えば、ExelとWordは同時に立ち上げられますが、
私の作った2本のソフトウェアは同時に立ち上げられ
ません。万一他の方がDxライブラリを使用して作成
したソフトと私が作成したソフトを同時に起動しよ
うとして片方が動かないとなると、問題になるので
はないかと心配しています。
|
Re: ソフトの二重起動について ( No.4 ) |
- 名前:Will 日時:2012/12/21 18:01
二重機動による問題は私が知るかぎりなかったと思いますが、管理人さんの回答をまってください。
なぜデフォルトで二重起動禁止について私の意見です。
今ではデスクトップマスコットとか、いろいろなツールを作るのにDXライブラリが
使われていたりしますが、本来、Direst Xを使用したゲームを作りやすくすることを目的としたものでした。
> 例えば、ExelとWordは同時に立ち上げられますが、
と書かれていますがまさにそのとおりで、ツールを複数同時に起動する人はいくらでも居ますが
ひとつのパソコンで2つ同時にゲームする人はそういませんよね。
特にフルスクリーンモードを使用するゲームを2つ同時に立ち上げることはまずしません。
DXライブラリのデフォルトはフルスクリーンモードです。
だから二重起動禁止がデフォルトなのではないでしょうか。
|
Re: ソフトの二重起動について ( No.5 ) |
- 名前:コナン 日時:2012/12/22 16:47
皆様お忙しい中ご回答頂き、ありがとうございます。
>ひとつのパソコンで2つ同時にゲームする人はそういませんよね
確かにその通りですね。思い至りませんでした…。
これが正答であれば安心ですが、念のため管理人様
の回答をまってみたいと思います。
|
Re: ソフトの二重起動について ( No.6 ) |
- 名前:管理人 日時:2012/12/31 02:15
ソフトの二重起動防止は Willさんが仰られています通り、もともとフルスクリーンモードで動作する
ゲームを作成するのがメインのライブラリだったからです
( 公開当時は256色モードなども健在だったので「DirectXのソフト=フルスクリーンモード」
という考え方が一般的で、ウインドウモードはあくまで開発中に使用する補助機能という位置づけでした )
同じソフトは二重起動できないけど、DXライブラリで作成された別のソフトは起動できるようにしたい、
という場合は DxLib_Init の前に SetMainWindowClassName という関数でクラス名を変更してください
// メインウインドウのクラス名を設定する( DxLib_Init の前でのみ使用可能 )
int SetMainWindowClassName( char *ClassName ) ;
クラス名はウインドウのタイトルと同じで他のウインドウと被らなければなんでもOKです
|
Re: ソフトの二重起動について ( No.7 ) |
- 名前:コナン(解決) 日時:2012/12/31 15:11
管理人様お忙しい中ご回答ありがとうございます。
しかもSetMainWindowClassNameという方法までご教示いただき、本当に感謝です。
これでスッキリしたお正月を迎えられます。
ありがとうございました。
|