DXライブラリのメイン関数につきまして(雑談です)

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
ムンバ

DXライブラリのメイン関数につきまして(雑談です)

#1

投稿記事 by ムンバ » 15年前

と、Visual C++ 2010 Expressにつきまして(これも雑談で、すみません。)
タイトル画面が長くなっちゃうと思ったので、こうしました。^^;

こんばんは。
いつもお世話になります。

今回は、DXライブラリのメイン関数についての質問なのですが・・・

実は、昨日から本家の掲示板で直接、お聞きしようと何度も思っていたのですが
一度も質問などした事は無いですし、先ほど覗いて見たら
私のハンドルネーム(ムンバ)と似た様な名前の方が、ご質問されていたので
あちらで質問しにくくなってしまいました。
ですので、雑談という事で宜しくお願い致します。(_ _)

こちら(Dixqさんのサイト内)のサンプルソースや
DXライブラリ本家のサンプルソースのDXライブラリでのメイン関数は

int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow )

と、なっていますが今、勉強してる本のDXライブラリのメイン関数は

int WINAPI WinMain( HINSTANCE hI, HINSTANCE hP, LPSTR lpC, int nC)

と、なっています。
この様に(この本のメイン関数の様に)省略?しても
こちらのサイト内や本家のサンプルソースは、実行できました。

OS:Win7 Pro(32bit) ---編集追加部位---
環境:VC++2008(SP1)

私が購入した本の記述では
「HINSTANCE や LPSTR は、マイクロソフトが定義した型名です。
本書ではここ以外では登場しないので、正確に入力
していれば特に気にする必要はありません。」
と、なってます。


質問1
 http://www.microsoft.com/japan/msdn/vst ... fault.aspx
 のページの、左下の方

 Visual C++ 2010 Express
 ↑こちらをDLして使用した場合、30日~90日無料で、91日目からは有料になるのでしょうか?
 それとも今、私が使ってるVC++2008の様に、ライセンスを取得すれば
 91日目からも、無料で継続使用できるものなのでしょうか?

質問2(.cpp)
 DXライブラリのメイン関数は
 int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow )
 か
 int WINAPI WinMain( HINSTANCE hI, HINSTANCE hP, LPSTR lpC, int nC)
 か
 今後(今の所)、どちらで記述していけば間違いが無いのでしょうか?
 PCの環境によって使い分けた方が良いのでしょうか?

質問3(Visual C++ 2010 Express が、無償だと仮定しての質問です。)
    有償でしたら、質問3は無視して下さい。)

 質問3-1
  Visual C++ 2010 Express にバージョンアップした理由を、お聞きしたいです。
 質問3-2
  Visual C++ 2010 Express にバージョンアップしなかった理由を、お聞きしたいです。


相変わらず、ごめんなさい。寝てしまいます。(謝
寝るぎりぎりまで調べた結果の質問です。
またまた訳の解らない質問をしている様でしたら、ご迷惑をお掛け致します。
お時間のある方、お手数ですが、ご指導・ご指摘の程、宜しくお願い致します。

おやすみなさい。すみません。(_ _) 画像

Justy

Re:DXライブラリのメイン関数につきまして(雑談です)

#2

投稿記事 by Justy » 15年前

>質問1
 2008と同じだと思いますよ。
 無料の登録だけすればそのまま無料。


>質問2(.cpp)
 ただの変数名の違いしかないので、使い分ける必要もなく別にどっちでもいいです。お好みで。
 でもよく見かけるのは上の方ですし、変数名として意味がわかりやすいのも上ですね。

 ただ普通の Windowsプログラムならともかく DXライブラリの場合4つの引数とも
どうせ使わないので
int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
でいいかも。


>質問3-2
 メモリと HDDを食いつぶしそうだから、というのもありますが、仕事でも使う予定ないですし
2008の時に発売直後に買って痛い目みてるんで様子見 or SP1待ちです。

たかぎ

Re:DXライブラリのメイン関数につきまして(雑談です)

#3

投稿記事 by たかぎ » 15年前

雑談ということなので...

DXライブラリはWinMainから始めるようになっていますが、次のようにmainから始めるようにしておけばもっと取っ付き易くなるのに、と考えることがあります。

#include <windows.h>
#include <stdlib.h>
extern int main(int, char*[/url]);
int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
return main(__argc, __argv);
}

注) Cでないとコンパイルできません。

ムンバ

Re:DXライブラリのメイン関数につきまして(雑談です)

#4

投稿記事 by ムンバ » 15年前

おはようございます!

Justyさん、たかぎさん、早速のご解説どうもありがとうございます。

<<Justyさん
 新しいもの好きですので、無料だったらと思ったのですが
 おっしゃる様に私も「様子見orSP1」待ちにしときます。(笑
 
 4つの引数とも使われて無いんですか?
 知りませんでした~!^^;
 しばらく? int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
 でやってみます。見易いですし。
 ありがとうございました。

<<たかぎさん
 了解しました!
 ソースありがとうございます。
 そういう書き方もできるんですね。試してみたいと思います。
 どうもありがとうございました。

勉強になりました。
また何かあれば、宜しくお願い致します。
失礼します。

たかぎ

Re:DXライブラリのメイン関数につきまして(雑談です)

#5

投稿記事 by たかぎ » 15年前

> そういう書き方もできるんですね。試してみたいと思います。

いや、DXライブラリ自体がそういう作りになっていれば、という妄想です。

ムンバ

Re:DXライブラリのメイン関数につきまして(雑談です)

#6

投稿記事 by ムンバ » 15年前

わざわざ、すみません。
相変わらず、勘違い多くて。^^;
ありがとうございました。

---↓追加---
もし、まだ見ていたら、たかぎさん・・・。

#include <windows.h>
#include <stdlib.h>
extern int main(int, char*[/url]);
int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
return main(__argc, __argv);
}

の方が、私の様な、ぴよぴよのプログラマーには
とっつきにくいっすよ。(涙

って事で、また何かありましたら宜しくお願い致します。ε=ε=┏( ∩_∩)┛ 画像

閉鎖

“C言語何でも質問掲示板” へ戻る