关于命令行UWP应用程序的这博客文章说:“可执行程序是UWA应用程序EXE的名称,而EntryPoint是应用程序类的完全限定名。”
这对于C#应用程序来说是有意义的,但是C++/WinRT控制台UWP应用程序模板呢?我们拥有的唯一代码是:
int main()
{
// You can get parsed command-line arguments from the CRT globals.
wprintf(L"Parsed command-line arguments:\n");
for (int i = 0; i < __argc; i++)
{
wprintf(L"__argv[%d] = %S\n", i, __argv[i]);
}
wprintf(L"Press Enter to continue:");
getchar();
}最主要的人说:
...
<Application Id="App"
Executable="$targetnametoken$.exe"
EntryPoint="UWPConsoleApp.App"
...我调用了项目UWPConsoleApp,这就是VS设置的入口点,但是这个类在哪里?编译器是否生成它,是由宏控制的一些模糊的vcruntime init代码,还是完全不同的东西?
发布于 2018-12-06 23:40:46
这些显式值在这里基本上是未使用的,所以不要担心它。C++/CX的Package.appxmanifest与C++/WinRT没有区别。
启动的差异在您的代码入口点:
// C++/CX
[Platform::MTAThread]
int __cdecl main(Platform::Array<Platform::String^>^ /*argv*/)
{
auto viewProviderFactory = ref new ViewProviderFactory();
CoreApplication::Run(viewProviderFactory);
return 0;
}与
// C++/WinRT
int WINAPI wWinMain(
_In_ HINSTANCE /*hInstance*/,
_In_ HINSTANCE /*hPrevInstance*/,
_In_ LPWSTR /*lpCmdLine*/,
_In_ int /*nCmdShow*/
)
{
ViewProviderFactory viewProviderFactory;
CoreApplication::Run(viewProviderFactory);
return 0;
}https://stackoverflow.com/questions/53659003
复制相似问题