问题标签 [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 投票
5 回答
27570 浏览

mingw - 对 SDL_Init 的未定义引用

我今天开始使用 SDL,之前遇到了一些麻烦,现在我让它运行了,但它不会让我初始化它。

这是我的代码:

这是构建日志:

我会感谢所有可能的帮助,一开始的#undef main 是因为它不会让我运行它。如果它不存在,它会在我创建控制台应用程序时给我一个“未定义的 winmain@16 引用”。

0 投票
1 回答
3378 浏览

c++ - WinMain/Win32 窗口未显示,但显示在任务管理器的进程选项卡中

我是 C++ 的新手,我一直坚持显示窗口。我没有收到任何错误,但我的 Window 没有显示在桌面上。当我打开任务管理器时,它出现在“进程”选项卡下。我一直没有找到解决此问题的任何方法,因此不胜感激。谢谢!:)

**注意:我使用的是 Microsoft Visual Studio 2012 **注意:不完全是 C++ 的新手,但更多的是创建一个 win32 应用程序

0 投票
2 回答
413 浏览

c++ - 将命令行字符串 lpszCmdLine 传递给 c 中的 WM_CREATE

我有一个使用 c 语言编写的 win32 应用程序。我已经实现了命令行参数的使用,这些参数被捕获到 WinMain() 函数的 lpszCmdLine 参数中。这个参数可以在这个函数中访问,WinMain是我当前处理命令行的地方。(使用各种命令行参数设置我的各种变量)。但我希望我可以在回调函数的 WM_CREATE 案例中处理我的命令行参数。现在,有些事情将在 WM_CREATE 中发生,我希望它们根据我的命令行参数以不同的方式发生。

是否可以将特定字符串传递给回调函数?

0 投票
1 回答
540 浏览

c++ - OpenGL示例中WinMain错误的重新定义

我正在尝试通过以下示例与 OpenGL 取得联系:

我正在使用最新版本的Code::Blocks (v13.12)和 MinGW-TDM-GCC-4.8.1
在链接器设置中我链接到libopengl32.a并使用windows.h和 GL-headers MinGW 分布。

但是我收到此错误:

我错过了什么?还是此示例仅在使用 Visual Studio 时才有效(如编译指示所示)?


编辑

我把所有东西都删掉了(没有opengl的东西),只有win头和它的WinMain,但同样的错误。

然后我用它的标准 main 替换了 WinMain(见这里

在我也链接到libgdi32.a之后它编译没有错误,但是它只显示一个空的命令提示符。


编辑 2

我删除了宽字符串(L""CreateWindowWCreateWindow),现在它可以工作了..

0 投票
1 回答
457 浏览

c++ - 使用 Netbeans 的 C++ 中的 WinMain 入口点仍然显示控制台

我正在尝试制作一个小型应用程序,它根据命令行参数启动另一个应用程序。

我正在使用这样的WinMain入口点:

但我仍然看到一个控制台窗口。

如何确保在运行应用程序时不会绘制任何控制台窗口?

  1. 为了做到这一点,如何配置 Netbeans?
  2. 我必须更改上述代码吗?如果是,必须更改或添加什么?

PS:我可以用 隐藏控制台窗口ShowWindow(GetConsoleWindow(), SW_HIDE),但您仍然可以在几分之一秒内看到控制台窗口。我想确保永远不会显示控制台窗口。

0 投票
2 回答
4885 浏览

c++ - 未定义对 WinMain@16 C++、SDL-2 的引用

我一直收到错误undefined reference to WinMain@16。为了节省空间,这里是项目中当前所有文件的链接。目前,除了创建一个窗口,将其填充为绿色,然后在角落绘制一个框外,它不应该做太多事情,同时通过控制台跟踪我的鼠标位置。但是,它不会构建,并且我得到了上述错误。

我的链接器库是:

  • glew32s
  • libSDL2main
  • mingw32
  • libSDL2
  • opengl32
  • glew32

我按照 C++11 ISO C++ 语言标准使用带有 g++ 的 Codeblocks 13.12。我的电脑正在使用 Windows 10,以防万一。

我花了很长时间试图找到一个解决方案,似乎每个人都有一个完全不同的解决方案,到目前为止,没有一个对我有用。一些例子包括:

  • 根据这个类似的问题将 SDL2_image 添加到我的链接库中。它给了我错误-lSDL2_image
  • 完全从头开始项目,以防我没有注意到的一些错字是原因。(我得到了完全相同的错误)。
  • 将我的main功能更改为WinMain. 我得到了同样的错误信息。
  • 添加Windows.h标题。这没有什么明显的效果。
  • 我喜欢的图书馆的各种所谓的“正确命令”。到目前为止,这些似乎都没有帮助。

我还应该指出,用户提供的答案是 Cheers 和 hth。- Alf,可能就是我要找的东西,但老实说,我无法完全理解基于它我应该做什么。

如果有任何我忘记包含的相关信息,请告诉我,我会尽快提供。提前致谢。

0 投票
1 回答
975 浏览

c++ - 什么是对`WinMain@16 的未定义引用

我最近开始编程,这就是我写的:

我以为很简单,但随后往往会出现此错误:

C:/MinGW/i686-pc-mingw32/lib/libmingw32.a(lib32_libmingw32_a-crt0_c.o):crt0_c.c:(.text+0x3c): 未定义对“WinMain@16”的引用

谁能逐步解释我应该解决什么?

0 投票
2 回答
632 浏览

visual-studio - 为什么winmain参数不匹配?

为什么 QApp 构造函数因WinMain参数而失败?

在这里它失败了,但有异常:

怎么了?如何解决?

升级版:

它以这样的方式工作:

_lpCmdLine是 10 并且_nShowCmd是空字符串 - 所以它不匹配。为什么?

0 投票
0 回答
29 浏览

c++ - 在 Code::Blocks 中编写 C++ 控制台应用程序并获得 WinMain@16 undefined ref

我正在上编程 101 课程,我有一个作业要做,我要修改以下示例文件。我不是在这方面寻求帮助,因为我想我知道我必须对文件做什么。我的问题是给定的文件(都是从文本中手动键入并直接从给定的示例文件中复制/粘贴)导致相同的错误。

据我所知,该示例是将头文件设置为可重用(如头文件一样)。然后调用 header 获取课程名称并将其插入欢迎消息中。

我正在使用 Code::Blocks 16.01。我选择了本书推荐的 GNU GCC Compiler (C++11)(Pearson 产品)。我已经将我的项目设置为控制台应用程序,并且我运行的所有其他代码都是相同类型的应用程序,并且已经编译/工作没有错误。我已经使用拆分源代码和头文件做了两个示例。最后一个工作完美。所以我不确定出了什么问题。

构建日志

所以两个问题:

是什么导致了错误?我不应该在某个地方有一个int main()吗?

成绩簿.h

成绩册.cpp

还有第三个文件,根据本书,它是单独练习的一部分,但似乎是相关的,如下所列。存在的问题是,除了标题的常见用法之外,我看不到这些 .cpp 的链接。但它也包括我预期的int main() 。所以我真的很困惑。

该文件还引用了相同的标题(并且仅适用于构建/项目中的标题),但它创建了两个成绩册对象,然后告诉我们它已经完成了。因此,我不确定以前的 .cpp 缺少什么以使其工作,或者它如何/为什么与这个集成。

0 投票
1 回答
2212 浏览

c++ - WinMain 编译,但 wWinMain 不在 CodeBlocks 中

所以我正在尝试使用 Win32 在CodeBlocks中创建一个窗口,到目前为止只有这个版本的 WinMain 有效(注意:这只是一个简单而幼稚的例子):

但是这个版本没有:

据我所知,后者期望第三个参数是指向一串宽字符的指针,而前者不是。但是当我在 CodeBlocks 中编译时,我得到的只是这条消息:

未定义对 WinMain@16 的引用

显然 CodeBlocks 期望 WinMain 版本不接收 LPWSTR 值作为参数。我的问题是,如何配置 CodeBlocks 以便它与 wWinMain 一起编译?