我正在尝试从win32应用程序更改Windows 8.1中的登录壁纸,似乎我错过了一些步骤,因为在“锁定屏幕设置”中图像显示为活动状态,但是当我锁定时pc图像不是我使用的图像。
有人可以解释一下我缺少的事情吗?
代码如下,我正在使用CxxWinRTTemplate来执行此操作:
#include <iostream>
#include <ppltasks.h>
using namespace std;
using namespace Concurrency;
using namespace Platform;
using namespace Windows::Storage;
using namespace Windows::Storage::Streams;
using namespace Windows::Storage::Pickers;
using namespace Windows::System::UserProfile;
using namespace Windows::UI::Xaml::Media::Imaging;
int main(Platform::Array<Platform::String^>^ args) {
if( args->Length != 2 ) {
Platform::Details::Console::WriteLine(L"Invalid arguments.");
} else {
create_task(KnownFolders::PicturesLibrary->GetFileAsync(args[1])).then([](task<StorageFile^> getFileTask)
{
try {
Windows::Storage::StorageFile^ file = getFileTask.get();
create_task(LockScreen::SetImageFileAsync(file)).then([file](task<void> result)
{
try {
// Use result.get() to trigger exception if invalid image is chosen
result.get();
} catch( Exception^ e ) {
Platform::Details::Console::WriteLine(e->Message);
}
}).wait();
} catch( Exception^ e ) {
Platform::Details::Console::WriteLine(e->Message);
}
}).wait();
}return 0;
}
图像存在,并且是.jpg并且具有与主桌面相同的大小(并且图像大小也小于250kb,因为在以前的Windows版本中这是必需的,这里我不知道...... )
由于