【发布时间】:2015-09-23 09:46:23
【问题描述】:
有没有办法从Background Task 设置锁屏或壁纸图像?我有以下代码:
if (await UserProfilePersonalizationSettings.Current.TrySetWallpaperImageAsync(file)) {
Debug.WriteLine("Live wallpaper set!");
} else {
Debug.WriteLine("Live wallpaper failed to set...");
}
这在我在应用程序中正常执行时有效,但当我从 Background Task 执行时无效——第一行之后的断点永远不会被命中,表明另一个同步/死锁问题 (see my previous post on a similar issue)。该线程中的修复对我也不起作用(它总是返回false):
bool success = UserProfilePersonalizationSettings.Current.TrySetWallpaperImageAsync(file).GetResults(); // Try GetResults()... ALWAYS returns false
bool success = Task.Run(async () => {
return await UserProfilePersonalizationSettings.Current.TrySetWallpaperImageAsync(file);
}).Result; // ALWAYS returns false...
我有什么遗漏吗(可能无法从Background Task 拨打TrySetWallpaperImageAsync)?
任何帮助将不胜感激,谢谢!
【问题讨论】:
标签: c# asynchronous async-await windows-10 background-task