Rumah > pembangunan bahagian belakang > C++ > Mengapa MinGW membuang ralat 'rujukan tidak ditentukan kepada WinMain' apabila menggunakan wWinMain dalam C ?

Mengapa MinGW membuang ralat 'rujukan tidak ditentukan kepada WinMain' apabila menggunakan wWinMain dalam C ?

Linda Hamilton
Lepaskan: 2024-11-05 11:23:02
asal
332 orang telah melayarinya

Why does MinGW throw an

Menyelesaikan rujukan yang tidak ditakrifkan kepada WinMain apabila menggunakan wWinMain dalam C (MinGW)

Apabila cuba menggunakan wWinMain (HINSTANCE hInstance, HINSTANCE, HINSTANCE, PWSTRA , int nCmdShow) sebagai titik masuk program dalam C di bawah MinGW, ralat "rujukan tidak ditentukan kepada WinMain" boleh berlaku.

Punca:

MinGW, terutamanya versi lama , tidak menyokong titik masuk wWinMain secara asli, yang menjangkakan hujah baris arahan aksara lebar (WCHAR).

Penyelesaian:

Terdapat dua penyelesaian yang berpotensi:

1. Gunakan Bendera -municode:

Versi MinGW yang lebih baharu menyokong bendera pemaut -municode, yang bertukar kepada kod permulaan alternatif yang membenarkan penggunaan wWinMain. Tambahkan bendera ini pada baris arahan anda, pilihan pemaut dalam IDE anda atau Makefile:

g++ other_options_and_arguments -municode
Salin selepas log masuk

2. Gunakan Titik Masuk WinMain:

Untuk versi MinGW yang lebih lama atau jika anda memilih untuk tidak menggunakan bendera -municode, anda boleh kembali menggunakan titik masuk WinMain standard. Ini memerlukan pengubahsuaian kod anda seperti berikut:

  • Tukar wWinMain kepada WinMain
  • Tukar PWSTR pCmdLine kepada PSTR pCmdLine

Nota Tambahan: >

Jika anda perlu mengakses argumen baris perintah Unicode kemudian dalam program anda, gunakan LPWSTR cmd_line = GetCommandLineW(); bukannya menggunakan argumen WinMain.

Atas ialah kandungan terperinci Mengapa MinGW membuang ralat 'rujukan tidak ditentukan kepada WinMain' apabila menggunakan wWinMain dalam C ?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan