2017-08-15 126 views
0

我想要與指定用戶共享Google雲端硬盤中存在的文件。該文件不公開。與Google雲端硬盤中的指定用戶共享文檔

首先,我想在WebBrowser控件中顯示一個文件。 其次,我希望當我將某個網址分享給其他用戶時,他們可以在其Google雲端硬盤中顯示該文件。

這是我的代碼,我已經可以做第一步,但對於第二步,我不知道我該怎麼做。

Public Sub A(fichier As String) 
CreateService() 
    Dim url As String = "" 
    Dim list = Service.Files.List() 
    Dim count = list.Execute() 
    For Each fich In count.Items 
     If (fich.Title) = fichier Then 
      url = fich.WebContentLink 
      Exit For 
     End If 
    Next 
    affich_image.img.Navigate(url) 
    affich_image.Show() 

回答

1

您可以使用permissions.insert方法。

插入文件或團隊雲端硬盤的權限。

要查看參數和更多詳細信息,請嘗試訪問documentation

在這裏,我爲您提供了上述文檔中介紹的.NET的示例代碼。

using Google.Apis.Drive.v2; 
using Google.Apis.Drive.v2.Data; 

using System.Net; 
// ... 

public class MyClass { 

    // ... 

    /// <summary> 
    /// Insert a new permission. 
    /// </summary> 
    /// <param name="service">Drive API service instance.</param> 
    /// <param name="fileId">ID of the file to insert permission for.</param> 
    /// <param name="value"> 
    /// User or group e-mail address, domain name or null for "default" type. 
    /// </param> 
    /// <param name="type">The value "user", "group", "domain" or "default".</param> 
    /// <param name="role">The value "owner", "writer" or "reader".</param> 
    /// <returns>The inserted permission, null is returned if an API error occurred</returns> 
    public static Permission InsertPermission(DriveService service, String fileId, String value, 
     String type, String role) { 
    Permission newPermission = new Permission(); 
    newPermission.Value = value; 
    newPermission.Type = type; 
    newPermission.Role = role; 
    try { 
     return service.Permissions.Insert(newPermission, fileId).Execute(); 
    } catch (Exception e) { 
     Console.WriteLine("An error occurred: " + e.Message); 
    } 
    return null; 
    } 

    // ... 

} 

您也可以訪問此SO post作進一步討論。

相關問題