- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
有没有办法让我的 winRT 应用程序成为 xaml 中的屏幕保护程序?
最佳答案
正如 Jerry 所说,没有直接的方法来制作 Windows 应用商店应用程序屏幕保护程序。但是,有一个迂回的解决方案可能适用于 Windows 8,但不适用于 Windows RT。我几乎可以正常工作了。我将分享我目前所拥有的。
屏幕保护程序只是一个带有 .scr
扩展名的可执行文件,保存在 C:\Windows\System32
中。例如,查看 C:\Windows\System32\Bubbles.scr
。我想到的解决方案是创建一个 .scr
屏幕保护程序,其唯一目的是启动您的 Windows 应用商店应用程序,您说该应用程序将使用 XAML。
您无法直接从命令行启动 Windows 应用商店应用,因此您将创建一个启动器应用。查看名为 Automating the testing of Windows 8 apps 的博客文章阿什温·尼达曼加拉 (Ashwin Needamangala) 着。在文章的中途,查找名为自动激活您的应用 的部分。它包含一个示例 C++ 应用程序,可以通过以下方式启动 Windows 应用商店应用程序:
C:>Win8AppLaunch.exe Microsoft.BingNews_8wekyb3d8bbwe!AppexNews
该页面上的示例启动器需要修改,但在您这样做之前,只需将代码复制到 C++ 控制台应用程序中:
您几乎已准备好从命令行对其进行测试,但您需要将应用程序的名称指定为 AppUserModelId
。详细信息在 Ashwin 的帖子中,但换句话说,您首先要允许在您的系统上执行 PowerShell 脚本:
PS C:> Set-ExecutionPolicy AllSigned
然后运行这个 PowerShell 脚本:
$installedapps = get-AppxPackage
foreach ($app in $installedapps)
{
foreach ($id in (Get-AppxPackageManifest $app).package.applications.application.id)
{
$app.packagefamilyname + "!" + $id
}
}
您可能喜欢在 Windows PowerShell ISE 中运行它.它很光滑。找到应用的 AppUserModelId
,然后从命令行测试 Win8AppLaunch.exe
,如上所示。这应该从命令行启动您的 Windows 应用商店应用程序。
接下来,修改 C++ 启动器以硬编码应用程序的 AppUserModelId
,而不是从命令行参数中解析它。我创建了 a Gist of this .重要的部分是我声明 myApp
的行。
构建新的可执行文件,将其重命名为 MyScreenSaver.scr
并将其放入 C:\Windows\System32
。然后它将出现在屏幕保护程序设置控制面板中。您可以在那里预览屏幕保护程序,它可以工作。但是,如果您等待屏幕保护程序启动,它会短暂地弹出一个控制台窗口并且永远不会完全启动。我不确定为什么。我尝试通过将项目切换到 Windows 应用程序来禁用控制台窗口的创建,但这没有帮助。您可以通过更改 Properties | 来自己尝试配置 |链接器 |系统 |子系统
到WINDOWS
。这有点复杂,因为您还需要将入口点从 _tMain
更改为 _tWinMain
。如果您需要详细信息,请通过我的博客与我联系。我的 StackOverflow 配置文件列出了它。
此时它几乎完全正常工作。您可以尝试从一个您知道有效的空白 C++ 屏幕保护程序开始,然后复制上面的代码。如果我有更多时间,也许我会自己尝试一下。
关于windows - 我可以将 winRT 应用程序作为屏幕保护程序运行吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14271025/
是否可以在 WinRT 中实现自定义转换?例如。如果能够实现控件可见性的转换,那就太好了。因此,当您显示/隐藏分割 View 的一部分时,它会使用滑动效果为整个 View 添加动画效果。 最佳答案 是
我正在开发基于 XAML C# 的通用应用程序(目前专注于 WP8.1) 我的应用程序的主页非常复杂,有 3 个枢轴,每个枢轴都有网格、图像、边框、按钮、 ListView 等 问题有时是当我在执行其
我不久前从 C++/CX 切换到 C++/winrt,目前我被卡住了,因为我想创建一个单例 winrt 类。我阅读了有关 winrt::static_lifetime ( https://learn.
与 C++/CX 不同,C++/WinRT 中似乎没有 GUID 的包装器类型。它只使用普通的 C GUID struct原样。因此构造初始化 GUID 的唯一方法是使用 aggregate init
文档显示了这个 C# 片段: async void DisplayDeleteFileDialog(){ ContentDialog deleteFileDialog = new Conten
文档显示了这个 C# 片段: async void DisplayDeleteFileDialog(){ ContentDialog deleteFileDialog = new Conten
这是 xaml 的样子:
我有一个文本框,我不希望用户粘贴到其中。 如何防止粘贴? 从另一个应用程序中将文本拖放到 TextBox 中也是一个粘贴事件吗? 最佳答案 从 Windows 8.1 开始,Windows.UI.XA
这实际上更像是一个好奇心类型的问题。我负责跨程序集和原始 IL 查找类型。不过,Windows 8 确实让我正在实现的某些事情陷入困境。我发现 WinRT 和非 WinRT 框架程序集共享相同的完全限
我正在尝试创建一个条目页面,其中一个选项是选择一个项目。该列表可以超过 1000 个,并且显示列出项目的启用搜索的页面是有意义的。当用户从编辑/创建屏幕中单击“选择项目”时,我可以将导航参数传递到该屏
我正在将我的库移植到 WinRT,它依赖于 System.Globalization.Calendar 类及其派生类,如 GregorianCalendar 和 HijriCalendar 等。虽然这
我需要下载一个大的视频文件并将其保存到硬盘上。 然后我需要使用 XAML 媒体元素播放这个视频文件。 但该文件必须使用 AES 256 算法和加密 key 进行加密。任何时候都不得将未加密的数据写入硬
假设我有这样的事情: 像这样: public class MyViewModel : INotifyPropertyChanged { public MyViewModel() {
我正在尝试使用 WinRT 中的当前文化来格式化日期时间值。但是CurrentCulture 属性似乎并不尊重系统文化。 我尝试了以下两个属性, System.Globalization.Cultur
我的应用程序是在 silverlight 中开发的。计划在今年晚些时候推出。我担心我的 xaps 会被逆向工程。我的 wcf 服务确实有很多智能,但您不能将所有内容都放在服务中。现在 winrt 是另
我使用下面的代码发送电子邮件。但是当我在 VS 的模拟器中运行它时,无法启动电子邮件客户端。我做错了什么?但是电子邮件客户端以本地计算机模式启动。 var mailto = new Uri("mail
我正在开发通用应用程序。在为Windows Phone 8.1项目设计 View 时,不能使任何按钮的宽度小于109。如果将按钮的width属性设置为小于该宽度,则呈现时它将变为109。 我想知道如何
情况: 我从不同的互联网位置获取 json 对象。 这些包含我放在 BingMap 上的许多地理坐标。效果非常好。 问题: 但是当我从互联网位置获取数据时,我得到了一个阻塞的用户界面。有没有办法在后台
想法是这样的,您正在 Visual Studio 2013 Update 2 中为 Windows 8.1-Update 和 Windows Phone 8.1 创建一个 WinRT-XAML 通用应
什么是更新(替换)本地存储中的图像的好方法,该图像绑定(bind)到导航堆栈中的图像控件。 更具体地说:我在页面 A (ViewProfile.xaml) 中显示图像,图像源绑定(bind)到属性 I
我是一名优秀的程序员,十分优秀!