Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/143.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Win32应用程序,在调用Windows stuff之前调用自定义类方法_C++_Winapi_Visual Studio 2013 - Fatal编程技术网

C++ Win32应用程序,在调用Windows stuff之前调用自定义类方法

C++ Win32应用程序,在调用Windows stuff之前调用自定义类方法,c++,winapi,visual-studio-2013,C++,Winapi,Visual Studio 2013,上下文: 我正在尝试创建一个类,它是WIN32应用程序中第一个被调用的类。。。该类有一个设置方法。。。然后,我将调用从此处获取的Windows类: 标题 cpp 问题 如何阻止Win32应用程序自动运行其WinMain方法 注意: 我正在尝试制作一个可移植的应用程序。。。因此,您不希望应用程序只是简单地让应用程序先调用windows内容。在Visual Studio中,您可以在以下位置更改入口点: 项目属性->配置属性->链接器->系统->子系统 如果希望它是intmain则将其更改为控制台(

上下文:

我正在尝试创建一个类,它是WIN32应用程序中第一个被调用的类。。。该类有一个设置方法。。。然后,我将调用从此处获取的Windows类:

标题

cpp

问题

如何阻止Win32应用程序自动运行其
WinMain
方法

注意:


我正在尝试制作一个可移植的应用程序。。。因此,您不希望应用程序只是简单地让应用程序先调用windows内容。

在Visual Studio中,您可以在以下位置更改入口点:

项目属性->配置属性->链接器->系统->子系统

如果希望它是
intmain
则将其更改为
控制台(/SUBSYSTEM:Console)


Win32应用程序的默认值是
Windows(/SUBSYSTEM:Windows)
,这是
WinMain

您使用的编译器的可能副本?我正在Visual Studio 2013中创建应用程序:)。我正在了解如何查看正在使用的编译器。许多代码甚至在调用WinMain之前就已经运行了:CRT初始化、全局构造函数、隐式加载库中的初始化代码和DLL。你想防止所有这些吗?不清楚跳过WinMain如何帮助您实现可移植代码,所以不清楚如何指导您。谢谢Adrian,很高兴知道。。。很明显我刚刚进入痛苦的世界。。。很高兴知道还有更多。非常感谢。很难看出这个问题和这个答案之间的联系。如果这是答案,那么这个问题应该重新表述。
class OSWindows : IOS
{
public:
    void Setup() override;
};
#include "OSWindows.h"

void OSWindows::Setup()
{
    // Calls the windows stuff...
}