通过mime类型

时间:2017-04-15 14:28:52

标签: c# google-drive-api drive

我正在构建一个Windows C#Drive App,并希望显示一些文件夹的缩略图。

对于驱动器中存在的文件,我知道您可以使用IconLink参数获取图标。

如何使用文件的MimeType执行此文件(尚未存在)?

2 个答案:

答案 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帖子中的建议解决方案,看看它是否对您有所帮助: