c# - 如何使用 C# 以编程方式定位我的 Google Drive 文件夹?

标签 c# .net google-drive-api

here 类似的问题.仅适用于 Google Drive 而不是 Dropbox:

如何使用 C# 以编程方式定位我的 Google Drive 文件夹?

  • 注册表?
  • 环境变量?
  • 等等...

最佳答案

我个人认为,最好的方式是通过SQLite3访问同一个文件。

string dbFilePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "Google\\Drive\\sync_config.db");
if (!File.Exists(dbFilePath))
    dbFilePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "Google\\Drive\\user_default\\sync_config.db");

string csGdrive = @"Data Source="+ dbFilePath + ";Version=3;New=False;Compress=True;";                
SQLiteConnection con = new SQLiteConnection(csGdrive);
con.Open();
SQLiteCommand sqLitecmd = new SQLiteCommand(con);

//To retrieve the folder use the following command text
sqLitecmd.CommandText = "select * from data where entry_key='local_sync_root_path'";

SQLiteDataReader reader = sqLitecmd.ExecuteReader();
reader.Read();
//String retrieved is in the format "\\?\<path>" that's why I have used Substring function to extract the path alone.
Console.WriteLine("Google Drive Folder: " + reader["data_value"].ToString().Substring(4));
con.Dispose();

您可以从 here 获得 .Net 的 SQLite 库. 同时添加对 System.Data.SQLite 的引用并将其包含在您的项目中以运行上述代码。

要检索用户,从上面的代码中返回entry_key='user_email'

关于c# - 如何使用 C# 以编程方式定位我的 Google Drive 文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12173077/

相关文章:

c# - 类型转换运算符优先级

c# - 对象转储类

c# - 在 ASP.NET IIS 托管的 WCF 应用程序中偶尔调用需要 5 秒

.net - 将元信息附加到.NET中的对象

.net - SQL Azure 文件存储

c# - 动态更改无点参数

google-drive-api - 补丁体: simultaneous updates/users

c# - .Net DateTime 与本地时间和 DST

google-drive-api - 谷歌驱动器错误处理 oauth 2 请求 400

google-drive-api - 如何使用 Google Drive SDK 访问 "Shared with me"根目录?