gpt4 book ai didi

c++ - 如何在WP8上使用cpp使用 “Application.Current.Terminate”

转载 作者:太空宇宙 更新时间:2023-11-04 14:08:21 25 4
gpt4 key购买 nike

我正在为 Windows Phone 8 编写不带 XAML 的 C++ DirectX 应用程序。我处理了后退键,因为我想手动关闭应用程序,但我找不到 cpp 的 API。

C# 有官方的 API System.Windows.Application.Current.Terminate(),但是 cpp 没有命名空间 System::Windows::Application

我搜索了很多,但我只能找到 C# 方法。我试过 Windows::UI::Core::CoreWindow::GetForCurrentThread()->Close();
它可以关闭应用程序,但会导致 Platform::COMException,并且无法通过 try-catch 解决。

///////////////////更新 1/////////////

我找到了

int b = 0.1*10 - 1;
int a = 1/ b;

应用程序也会退出。所以 Windows::UI::Core::CoreWindow::GetForCurrentThread()->Close(); 不是关闭的方式。也许这只是一次崩溃。

///////////////////更新 2////////////

我找到一个 API

Windows::ApplicationModel::Core::CoreApplication::Exit();

但是医生是这么说的

"Shuts down the app. Do not use this method to shut down an app outside of testing or debugging scenarios."

所以我认为它不会通过测试。

///////////////////更新 3////////////

如果使用 Windows::ApplicationModel::Core::CoreApplication::Exit();关闭应用程序。然后如果我单击图标以重新启动应用程序。这将花费非常非常长的时间才能开始。可能是 Windows::ApplicationModel::Core::CoreApplication::Exit() 关闭了一些系统服务。但如果使用异常关闭应用程序,则启动时间不会很长。

///////////////////更新 4////////////

如果使用 Windows::ApplicationModel::Core::CoreApplication::Exit();在模拟器中,它无法通过再次单击图标重新启动应用程序

最佳答案

退出应用程序所需要做的就是跳出 CoreApplication::Run while() 循环。

例如,对于默认模板立方体 DirectX 示例应用程序,您需要做的就是将 m_windowClosed 成员变量设置为 true。

因此,如果您希望应用在您点击屏幕时结束,请执行...

void PhoneDirect3DApp1::OnPointerPressed(CoreWindow^ sender, PointerEventArgs^ args)
{
m_windowClosed = true;
}

然而,正如评论所说,您必须注意适本地处理后退按钮,否则您将无法通过认证。

关于c++ - 如何在WP8上使用cpp使用 “Application.Current.Terminate”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15976483/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com