问题标签 [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 回答
448 浏览

c++ - WinAPI - 如何组织大量 HWND 对象?

当我推进我的第一个 winapi UI 时,我发现自己在我的 WinMain 文件中创建了一大堆令人不舒服的 HWND 变量:

当然,这些变量在文件其余部分的函数中使用 - 例如消息循环 - 所以它们必须是可访问的。

对于我相对较小的 UI,我会堆积 30 个 HWND,以便它们处于可见范围内。这让我非常怀疑我做错了。

这是应该发生的事情,还是有更实际的组织方式?

0 投票
3 回答
9524 浏览

c - WINAPI 代表什么

我已经开始在 C 中学习 Win32 API。我看到 main 函数类似于

但我知道 C 中的函数就像

在这种情况下,返回类型是 int,函数名称是 WinMain。那么WINAPI代表什么,有必要吗?

谢谢你 。:)

0 投票
1 回答
7617 浏览

windows - Qt + MinGW + 对“WinMain@16”问题的另一个未定义引用

我知道,我挖掘了整个互联网以找出问题所在,但到目前为止没有任何帮助。

我在 Windows 7 上,使用:

我可以用 Qt Creator 编译任何 Qt 演示示例,所以我相信我的系统工作正常。
在尝试编译程序时,我遇到了一个众所周知的问题:

(object_script.libqlcengine.Debug 是一个相当长的 .o 文件列表)
现在,在构建时它正在尝试链接静态 .a 库,所以我认为 MinGW 没有理由寻找 WinMain。我做了 grep 'WinMain' 并在整个源代码树上找不到结果。

如果您想查看原始来源:

或者我的分叉版本:

他们有相同的结果。
伙计们,我在这里错过了什么?我尝试了一大堆 C 标志(-mwindows -lmingw32 -DQT_NEEDS_MAIN -lqtmain),但没有一个起作用。

请问有什么魔法吗?

PS 当然我可以在 Linux 上构建 i386/amd64

解决了:

我只需将以下行添加到创建库的 .pro 文件中:

0 投票
7 回答
87733 浏览

c++ - C++ 中的 WINMAIN 和 main()(扩展)

对,我看过这篇文章:C++ 中 WinMain、main 和 DllMain 的区别

我现在知道它WINMAIN用于窗口应用程序和main()控制台。但是阅读这篇文章并不能真正告诉我为什么有什么不同。

我的意思是分离不同的电源功能以启动程序有什么意义?是因为性能问题吗?或者它是什么?

0 投票
1 回答
1260 浏览

winmain - 通过 WinMain 和 CommandLineToArgvW 的命令行参数

我在尝试使用 WinMain 时尝试通过命令行(例如 -w 1280 -h 1024)通过我的程序传递参数时遇到问题。我浏览了我能找到的每个主题,并创建了构建和运行的代码,但参数被完全忽略了!

我的代码:

试图将其传递为“window.exe -w 800 -h 600”(当然不带引号)我的睡眠堕落代码中缺少什么?

0 投票
1 回答
227 浏览

c++ - 将 Win32 应用程序转换为对象

我对 WinAPI 编程很陌生,并且已经编写了一个用于屏幕捕获的 Win32 应用程序。当我运行程序时,光标立即变为十字准线,我可以单击并拖动以捕获屏幕的一部分并将其保存到文件中。

但是,我现在想修改我的程序,使其不包含 main 方法 (WinMain),并且本质上将其转换为对象类而不是应用程序类,以便我可以从其他程序调用函数。我无法找到有关如何执行此操作的良好资源,因为我相信 WinMain 在后台执行特殊功能,因此我不能简单地更改方法的名称。

任何人都可以提出一些好的资源或教程来解决这个问题吗?

0 投票
2 回答
314 浏览

c++ - Boost C++ - 入口点?

基本上,我从项目中的 main() 入口点继续前进并更改为 Windows 项目 - WINAPI WinMain(...)

但是 Boost 抱怨说 cpp_main() 丢失了。我怎样才能避免这种情况?谢谢。

0 投票
3 回答
18218 浏览

c++ - LNK2019:使用 WinMain 时函数 ___tmainCRTStartup 中引用的未解析外部符号 _main 错误

我一直在学习本教程来学习一些 DirectX 编程:http ://www.rastertek.com/dx11tut02.html

我已经走到了尽头,尝试构建并在编译时抛出了这个错误:

因此,我广泛搜索以尝试找到解决方案,我尝试过的事情包括:

- 将入口点设置为WinMainCRTStartup,wWinMainCRTStartupmainCRTStartup(可能还有其他)

- 确保子系统设置为 Windows 而不是控制台,甚至尝试将其设置为“控制台”和“未设置”以防万一。

- 为包含主要方法的文件添加现有项目。

- 下载了教程中提供的代码,以确保它不是我的编码错误,仍然没有工作。

现在有趣的一点:

我尝试将教程代码下载到具有 Visual C++ Express 2010 副本(我的笔记本电脑运行 Visual Studio 2010 Professional)的桌面(我通常无法访问,因为不在身边)。它在桌面上运行得非常好,第一次,不必更改单个设置。

所以问题一定与在我的笔记本电脑上安装 VS 有关,或者与我的笔记本电脑有关。

我尝试将所有 VS 设置重置为默认值,卸载 VS,进行修复安装,安装 Visual C++ Express,安装 Windows SDK v7.1,我能想到的一切,它仍然无法正常工作。

为了清楚起见,我用于主要的代码是:

请帮忙,我花了 2 天时间来解决这个问题,但没有得到任何结果,我正处于尝试完全重新安装 Windows 的边缘。

0 投票
2 回答
1404 浏览

c++ - C++ 中对 WinMain@16 的未定义引用

我正在学习使用 C++ 编程窗口的 MSDN 课程,所以我尝试了他们的代码:

}

因为我将其编译为:

然后我得到错误:

缺少什么?

0 投票
1 回答
1418 浏览

c++ - 在 Windows 中创建窗口时出错“未定义对 'WinMain@16' 的引用”

这是代码,这也是你可以在微软网站上找到的标准示例,教人们如何编程窗口。 http://msdn.microsoft.com/en-us/library/windows/desktop/ff381409(v=vs.85).aspx

每当我尝试在代码块中编译此代码时,我收到的问题如下。

未定义对“WinMain@16”的引用

那是什么,我可以做些什么来编译和运行这段代码?