我正在构建一个Windows C#Drive App,并希望显示一些文件夹的缩略图。
对于驱动器中存在的文件,我知道您可以使用IconLink参数获取图标。
如何使用文件的MimeType执行此文件(尚未存在)?
答案 0 :(得分:0)
如果您有文件扩展名,可以从注册表中获取,例如:
HKEY_CLASSES_ROOT
.avi
在我的计算机上,该密钥的(Default)
值为VLC.avi
。
现在找到具有该名称的密钥:
HKEY_CLASSES_ROOT
VLC.avi
在那里你应该找到一个名为DefaultIcon
的子项,在我的情况下,(Default)
的值为"C:\Program Files (x86)\VideoLAN\VLC\vlc.exe",0
从这里,您应该可以从.exe
路径获取图标。
有时DefaultIcon
包含.dll
后跟索引的路径。对于这些,您可以查看this SO question以获取有关如何提取图像本身的详细信息。
答案 1 :(得分:0)
您可以尝试Uploading thumbnails。如上所述,
对于Drive无法呈现的快捷方式和其他文件类型,您可以提供应用程序生成的缩略图图像。通过在插入或更新通话期间在File resource上设置
contentHints.thumbnail
属性来上传缩略图,如下所示:
- 将
contentHints.thumbnail.image
设置为URL安全的Base64编码图像- 将
contentHints.thumbnail.mimeType
设置为图像格式的相应类型如果云端硬盘无法生成缩略图,如果您提供缩略图,它将始终使用您的缩略图。
除此之外,请注意每次文件内容更改时缩略图都会失效。提供缩略图时,每次修改内容时都必须上传新的缩略图。
另外,请检查以下SO帖子中的建议解决方案,看看它是否对您有所帮助: