问题标签 [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.
c++ - 简单的项目不会编译
我仍然遇到无法编译的正在进行的项目的问题。我已将其缩小到包含但无法弄清楚发生了什么。我已经读到我需要添加一个 WinMain 入口点,但这并没有加起来 - 我有同学根本没有遇到这个狗屎错误。所以我创建了一个新的空项目:
包括以下内容:
在 GCC C++ 编译器下包括:
在 MinGW C++ 链接器库下:
在 MinGW C++ Linker Library 搜索路径下:
尽管如此,如果没有从这些库中调用任何函数,我就会收到此错误:
谁能救我?
谢谢,阿米特。
c++ - 在 Win32 C++ 中为窗口提供应用程序的焦点
我正在尝试在 Win32 C++ 中制作一个简单的游戏,并且我制作了一个设置窗口,当用户按下“P”按钮或“Esc”时会调用该窗口。
现在我的问题是,只要窗口没有被破坏,我怎样才能让设置窗口成为焦点,我尝试使用该SetFocus();
功能,并且我尝试使用该功能发送一个WM_SETFOCUS
和WM_KILLFOCUS
消息SendMessage();
,它们工作正常但是当我按下用鼠标将焦点再次转到主窗口。
我不知道我的问题是否与焦点有关,但我想做的是让我的设置窗口像一个消息框,一旦它出现,除非你关闭它,否则你不能在它外面点击。
c++ - 未定义对“WinMain”的引用
我正在学习 C++ 课程,我复制了代码并完成了与课程中的导师在讲座中所做的完全相同的操作,但是当我这样做时,我收到了一个很长的错误“... undefined reference to `WinMain' “而且我不知道该怎么办。
我在 Windows 10(和 Cygwin,我不知道它是否相关)上使用 Eclipse Neon,这是我的代码:
`
} ` 代码可以在没有“#include”的情况下运行,但是当我添加这行代码时,运行它时会弹出错误(所以我猜这就是问题所在)。当课程中的导师运行此代码时,它可以正常工作并正确打印出文本。有人可以告诉我如何摆脱这个错误并让这个简单的程序运行吗?
c++ - 包含 SDL.h 会导致程序在构建后立即终止,并且不运行,但不报错
此测试程序应创建一个空白窗口,该窗口会一直保持打开状态,直到您修改完毕。我从 SDL 的文档中复制了它以确保它是正确的。可以在这里找到。
它不会创建窗口并立即终止,但不会出错。
我正在使用 Eclipse、mingw32 和 SDL2 的最新稳定版本。SDL2 的库和头文件位于我的 C 驱动器中的一个文件中。我使用的是 64 位系统。我包括 SDL2 的头文件的整个文件夹。我链接的唯一库文件夹是 SDL2 文件夹的 64 位部分中的一个。我链接的库是 HolyBlackCat 建议的库,(按此顺序)mingw32
、、SDL2main
和SDL2
。任何帮助是极大的赞赏。谢谢!
c - 对 WinMain 的未定义引用失败
使用 GNU Make (v3.82.90) 构建我的应用程序时,我不断收到此链接器错误。我已经查看了关于 SO 的其他答案,但答案仍然让我难以理解。
我的makefile是这样的...
这是我的主要功能:
任何建议都非常感谢。谢谢。
更新
这不是重复的。 正如我发表这篇文章时所指出的那样,“我已经查看了关于 SO 的其他答案,但答案仍然让我难以捉摸。” 我正在尝试使用标准 C 库而不是Windows 应用程序构建控制台应用程序。
user-interface - 如何在 winmain 应用程序中使用最终的启动控制台?
我有一个小的 winmain 应用程序。这是一个 winmain,因为我不希望它在启动时闪烁控制台。但是如果它是从控制台启动的,我想在这个控制台中打印。
这可能吗 ?
linux - cygwin中WinMain@16下的未定义引用
我是 stackflow 的新手,以前我没有计算机系统和编程方面的背景。但是,现在我需要在 cygwin 下为我的生物信息学项目运行分析。当我尝试使用 cygwin 编译文件名“zone_b.linux”以生成可执行程序时遇到一些错误。linux 文件是从网站https://github.com/haddocking/HADDOCK-binding-sites-tutorial/blob/master/ana_scripts/zone_b.linux下载的。当我尝试在 cygwin 下使用以下命令进行编译时,会产生以下错误:
我在stackoverflow下搜索了以下错误,我发现了两个类似问题的帖子。
首先是未定义引用的帖子 `WinMain@16'。它指出问题是由于微软的链接器使用了一个运行时库入口点(winMainCRTStartup),它调用了微软的非标准 WinMain 而不是标准的 main。所以,我尝试了帖子的建议,即通过以下命令包含条目
但是我得到错误没有这样的文件或目录。我想可能是因为我在 cygwin 而不是 mingW 下运行。
第二篇文章是Cygwin 中对 WinMain 的未定义引用。从帖子中,它说使用 -c 编译标志只生成目标文件。但是,就我而言,我没有使用任何-c。因此,我认为这与我的问题无关。
如果有人能向我解释一下,我将不胜感激,因为我是这个计算领域的新手。谢谢你。
winapi - 在函数声明中包含调用约定
我正在阅读有关使用 C/C++ 进行 Win32 编程的信息,并遇到一个将 WinMain 定义为的页面:
我明白大部分,除了我不明白这部分WINAPI
是从哪里来的?
我知道这是一个调用约定的宏。这不是我想要澄清的。我的问题不在于调用约定。
当我查看 Microsoft 关于C++ 函数的文档并通读函数声明的可选部分时,我没有看到在函数声明的任何位置包含调用约定的任何提及。那么微软在他们的文档中究竟在哪里谈到在函数声明中包含调用约定呢?
c - 没有从 WinMain 打印到标准输出 - C/VS 2017
我应该先说明我对 VS 比较陌生,但是我对 C 并不陌生。
我遇到的问题是打印时标准输出上没有显示任何内容。printf/_s 和 fprintf/_s(stdout, ...) 都不会产生任何输出。有趣的是, fprinf(file, ...) 实际上确实产生了给定文件的输出。这是否与 printf 弃用有关(我已经尝试过 preproc._CRT_SECURE_NO_DEPRECATE)?
以下是我的完整程序:
我正在使用 Visual Studio 2017,该程序是 Win32(应用程序?)。此外,我已经排除了 Linker->System->Subsystem 是问题的可能性。
任何想法表示赞赏。
编辑:我不确定这是否重要,但 VS 顶部的“解决方案平台”下拉菜单显示 Win32,这与创建新的“Windows 桌面应用程序”不同。它说x86的地方。
c++ - SDL2代码的函数重载问题?必须定义错误入口点?
我正在尝试使用一些 SDL2 编码打开一个窗口。但是,每次我尝试编译和运行代码时,Visual Studio 总是给我同样的错误。
这是我的代码:
以下是他们给我的一些警告,以防万一: