問題タブ [winmain]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
2095 参照

c++ - Windows アプリケーションを静的にビルドするときのエラー

すべてを動的にリンクするとコンパイルして正常に動作するアプリケーションがありますが、静的にビルドしたい場合はコンパイルされません。

Visual Studio 2010 で、「スタティック ライブラリで MFC を使用する」オプションを設定しました。

これを行うと、次のエラーが表示されます。

追加のライブラリとして追加しようとしLIBCMT.libましたが、何も変わりません。

この問題を解決する方法についてのアイデアはありますか?

0 投票する
2 に答える
2033 参照

c++ - WinMain エントリポイントをクラスに埋め込みますか?

win32 プログラムのエントリ ポイントである WinMain をクラス メソッドとして使用することは可能でしょうか? 例えば;

ありがとう!

0 投票する
1 に答える
958 参照

winapi - アセンブラー: Win32 の WinMain オンスタック パラメーターの取得

アセンブリを使用してパラメーターにアクセスする必要がありますWinMainが、スタック内のどこにあるかを知っていると思われるにもかかわらず、アクセスできないようです (DWORD オフセット 0 から 16、および操作前に EBP をプッシュする場合は 0 から 20)。以下に、プログラムのコマンド ラインlpszCmdlineを含む文字列を表示する例を示しますが、常に 0 が含まれているように見えるため、何も表示されません。アセンブリ コードで他の引数を使用しようとすると、有効な文字列ポインターが存在しないように見えたり、予想どおりプログラムがクラッシュしたりします。



ただし、使用するGetCommandLineと、コマンドライン文字列への有効なポインターを取得でき、表示されます。



最初のコード ブロックのどこにエラーがありますか? パラメータを取得するには何が必要で、独自のコードを実装して有効なポインタを結果として他のパラメータに返すことができるlpszCmdLineようにする必要がありますか? GetCommandLineWinMainスタックからコマンド ライン ポインターを取得できない場合は、nCmdShow他の重要な初期化用の などの他のパラメーターを取得できない可能性があります。

上記以外のコードが必要な場合はお知らせください。知っておくと便利な場合は、リンカを使用せずに完全に手動で EXE を生成しました (追加のスタック パラメータのように、.NET に違いはありますか?) WinMain含まれるプログラムの2つの異なるオプションになります。

0 投票する
1 に答える
5705 参照

windows - WindowsXPでのNASMによるプログラミング

Windows XP 32ビット、2.09.08NASMで正常にアセンブルおよび実行される次のコードがあります。

NASMの多くのチュートリアルによると、asmファイルには次のものが必要です。

ご覧のとおり、私のasmファイルにはそれが含まれていません。(コメントアウトされています。持っているのは_startだけです)。では、これらのチュートリアルのすべてで、アセンブリプログラムにグローバルな_WinMain @ 16がなくても機能する場合に、グローバルな_WinMain@16のものが必要であることに言及しているのは何でしょうか。

これはアセンブルするコマンドです:nasm -f elf test.asm
これはリンクするコマンドです:ld -o test.exe test.o

0 投票する
4 に答える
2555 参照

c++ - winmain@16エラー

私はこのコードをオンラインで見つけてコンパイルしようとしていますが、gccは.があると私に言い続けundefined reference to WinMain@16ます。どこから来たのかわからないので、コード全体を投稿します。オンラインで検索した後、私は人々がint main()間違って書いた答えを見つけただけで、それを修正することでうまくいきました。これはこのコードでは機能しません。

このコードを実行するにはどうすればよいですか?

0 投票する
3 に答える
1616 参照

c++ - MFC の wWinMain はどのようにして実行可能ファイルになりますか?

MFC では、wWinMainで定義されていappmodul.cppます。私が見る限り、このファイルは mfc90ud.dll に組み込まれています。ただし、アプリケーションを実行すると、コール スタックが表示されますMyApplication.exe!wWinMainwWinMainエクスポートされた関数をどのように取得appmodul.objし、アプリケーションに配置しましたか?

0 投票する
2 に答える
2173 参照

c++ - prevInstance が常に NULL の場合、WinMain と wWinMain に存在するのはなぜですか?

初心者なのでとても初歩的な質問かもしれません。DirectX 11 を開始しています。最初のアプリケーションの作成中に wWinMain が使用され、WinMain と wWinMain の違いを探しているときに、このパラメーター prevInstance に出会いました。

MSDN によれば、prevInstance は常に null であり、常に null であるため、なぜ存在するのでしょうか (作成者が無用なパラメーターを与えていないと考えるのは論理的であるため)。そして(本から引用)、

アプリケーションの以前のインスタンスが既に実行されているかどうかを判断する方法が必要な場合、ドキュメントでは CreateMutex を使用して一意の名前のミューテックスを作成することを推奨しています。ミューテックスは作成されますが、CreateMutex 関数は ERROR_ALREADY_EXISTS を返します。

ミューテックスとは何か、およびその使用方法 (適切なリンクで十分です)。また、アプリケーションの別のインスタンスが存在するかどうかを確認するには、メソッドが必要なようです。prevInstance には、それへのポインタまたは参照が必要ですが、null であるため、明らかにそうではありません。その理由と、prevInstance の役割は何ですか?

0 投票する
1 に答える
69 参照

winapi - Winmain が自動起動時にメッセージを表示できない

私はwin32プログラムを持っています。手動で実行するとWinMainにメッセージが表示されますが、同じプログラムをレジストリ(実行)の下に置くと、PCの再起動時に自動的に実行され、メッセージは表示されません(ただし、プログラム普通に走る)。

プログラムを手動で (exe ファイルをクリックして) 起動する場合と、自動で (Windows レジストリを介して) 起動する場合に違いがある理由を知っている人はいますか?

ありがとう

クレメント

0 投票する
3 に答える
1362 参照

c++ - winmain() 関数 / c++

WinMain()関数の最後に一般的に書かれているこのステートメントの意味を説明してください。

コンソール アプリケーションをreturn 0;is it wrong for windows applications で終了することに慣れていますか?

ありがとうございました。

0 投票する
1 に答える
387 参照

c++ - winmain() 関数を隠す

WinMain()関数をクラス内に隠す方法はありますか? ありがとうございました。