将文件路径转换为URI

用户名

在c ++中使用secondaryTitle时,我必须输入一个指向徽标的URI。如果我尝试将其指向应用程序包之外的任何文件,则URI失败。我想要做的是让用户使用文件选择器选择文件

void App3::MainPage::FindLogo(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
{
    FileOpenPicker^ openPicker = ref new FileOpenPicker();
    openPicker->ViewMode = PickerViewMode::Thumbnail;
    openPicker->SuggestedStartLocation = PickerLocationId::PicturesLibrary;
    openPicker->FileTypeFilter->Append(".jpg");
    openPicker->FileTypeFilter->Append(".jpeg");
    openPicker->FileTypeFilter->Append(".png");

    create_task(openPicker->PickSingleFileAsync()).then([this](Windows::Storage::StorageFile^ file)
    {
        if (file)
        {
            StorageFolder^ folder;
            auto ur = ref new Uri("ms-appx:///Assets//");

            String^ s = Windows::ApplicationModel::Package::Current->InstalledLocation->Path;


            create_task(StorageFolder::GetFolderFromPathAsync(s)).then([=](StorageFolder^ folder){
                create_task(file->CopyAsync(folder, file->Name, NameCollisionOption::ReplaceExisting)).then([this, file](task<StorageFile^> task)
                {

                    logoFile = ref new Uri("ms-appdata:///local//App3//Assets//StoreLogo.scale-100.png");
                });
            });
        }
    });
}

然后复制该文件并将其保存在应用程序目录中。使用uri指向新副本时,它仍然失败。

void App3::MainPage::kk(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
{
    text = url->Text->ToString();
    ids = id->Text->ToString();
    auto test = ref new Windows::UI::StartScreen::SecondaryTile(ids, "hi", text, logoFile, Windows::UI::StartScreen::TileSize::Square150x150); // Breaks right here

//错误:徽标文件为0x05fcc1d0

    num++;

    test->RequestCreateAsync();



    //auto uri = ref new Windows::Foundation::Uri("http://www.google.com");
    //concurrency::task<bool> launchUriOperation(Windows::System::Launcher::LaunchUriAsync(uri));
}

更新

create_task(openPicker->PickSingleFileAsync()).then([this](Windows::Storage::StorageFile^ file)
    {
        if (file)
        {
            StorageFolder^ folder = ApplicationData::Current->LocalFolder;
                create_task(file->CopyAsync(folder, file->Name, NameCollisionOption::ReplaceExisting)).then([this, file](task<StorageFile^> task)
                {
                    String^ path = "ms-appdata:///local/" + file->Name;
                    logoFile = ref new Uri(path);
                });

        }
    });
克雷格·布罗克施密特(Kraig Brockschmidt)-MSFT

您正在尝试将选择的文件复制到应用程序包位置(InstalledLocation),而不是复制到应用程序数据文件夹中。程序包位置是只读的,因此CopyAsync应该失败。使用StorageFolder ^ localFolder = ApplicationData :: Current-> LocalFolder; 反而。

另外,您确实需要ms-appdata:/// local中的///,因为它是省略包ID的简写,但是您只需要在URI中的其他位置输入一个/。

最后,请注意,平铺图片的大小必须小于等于200KB,小于等于1024x1024,否则将根本不会显示。如果您使用的是照片图像,请使用JPEG压缩;矢量图像使用PNG压缩效果最佳。有关处理此问题的更多信息,请参阅我的免费电子书的第16章,使用HTML,CSS和JavaScript编程Windows Store Apps,第二版,特别是从第887页开始的“基本磁贴更新”和在第899页的侧栏。内容为适用于以所有语言编写的应用程序,并且是一本免费书籍,因此没有任何风险。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将文件路径转换为URI

来自分类Dev

在bash中将文件路径转换为URI

来自分类Dev

将URI转换为文件URI(file:////)

来自分类Dev

将文本文件中的Linux URI编码的文件名和路径转换为Windows路径

来自分类Dev

将数据URI转换为文件

来自分类Dev

将多维数组转换为文件路径

来自分类Dev

将共享文件夹路径转换为UNC路径

来自分类Dev

将共享文件夹路径转换为UNC路径

来自分类Dev

将文件路径转换为文件url [NSUrl]

来自分类Dev

使用文件路径将CSV转换为Excel文件

来自分类Dev

将.torrent文件转换为磁铁链接/ uri

来自分类Dev

将路径列表转换为文件名列表

来自分类Dev

将绝对文件路径转换为相对

来自分类Dev

将文件系统路径转换为const BYTE *的问题

来自分类Dev

javascript将图像路径转换为文件(列表)对象

来自分类Dev

如何将小写文件路径转换为实际

来自分类Dev

将文件路径字符串转换为 Markdown 链接

来自分类Dev

如何不使用任何第三方工具或手动将UNC Windows文件路径转换为文件URI?

来自分类Dev

将Url转换为Uri

来自分类Dev

Objective-C-如何将文件路径转换为符合外壳程序的文件路径

来自分类Dev

SVG:将轮廓路径转换为路径

来自分类Dev

svg:将轮廓路径转换为路径

来自分类Dev

将UNC路径转换为WSL路径

来自分类Dev

将URI转换为仅接受主机,端口和路径的字符串

来自分类Dev

如何将文件Uri方案转换为内容Uri方案?

来自分类Dev

将完整文件路径转换为pyspark中父母的多行绝对路径

来自分类Dev

将json文件转换为“键路径”,并在每个“键路径”的末尾添加结果值

来自分类Dev

将 bazel 目标路径转换为文件系统路径的可靠方法?

来自分类Dev

给定文件在本地存储中的路径,将文件转换为字节数组?

Related 相关文章

  1. 1

    将文件路径转换为URI

  2. 2

    在bash中将文件路径转换为URI

  3. 3

    将URI转换为文件URI(file:////)

  4. 4

    将文本文件中的Linux URI编码的文件名和路径转换为Windows路径

  5. 5

    将数据URI转换为文件

  6. 6

    将多维数组转换为文件路径

  7. 7

    将共享文件夹路径转换为UNC路径

  8. 8

    将共享文件夹路径转换为UNC路径

  9. 9

    将文件路径转换为文件url [NSUrl]

  10. 10

    使用文件路径将CSV转换为Excel文件

  11. 11

    将.torrent文件转换为磁铁链接/ uri

  12. 12

    将路径列表转换为文件名列表

  13. 13

    将绝对文件路径转换为相对

  14. 14

    将文件系统路径转换为const BYTE *的问题

  15. 15

    javascript将图像路径转换为文件(列表)对象

  16. 16

    如何将小写文件路径转换为实际

  17. 17

    将文件路径字符串转换为 Markdown 链接

  18. 18

    如何不使用任何第三方工具或手动将UNC Windows文件路径转换为文件URI?

  19. 19

    将Url转换为Uri

  20. 20

    Objective-C-如何将文件路径转换为符合外壳程序的文件路径

  21. 21

    SVG:将轮廓路径转换为路径

  22. 22

    svg:将轮廓路径转换为路径

  23. 23

    将UNC路径转换为WSL路径

  24. 24

    将URI转换为仅接受主机,端口和路径的字符串

  25. 25

    如何将文件Uri方案转换为内容Uri方案?

  26. 26

    将完整文件路径转换为pyspark中父母的多行绝对路径

  27. 27

    将json文件转换为“键路径”,并在每个“键路径”的末尾添加结果值

  28. 28

    将 bazel 目标路径转换为文件系统路径的可靠方法?

  29. 29

    给定文件在本地存储中的路径,将文件转换为字节数组?

热门标签

归档