我是文件/文件夹的所有者,并且想通过脚本将文件和文件夹的所有者设置为其他人。它是较大代码的一部分,其中我浏览了给定文件夹的所有子文件夹和文件,并希望将所有权转让给其他人。问题是命令'setOwner()'不起作用。
我已经尝试使用命令folder.setOwner(Email Address),它给了我错误消息“无效的参数(x行,文件“代码”)”关闭 '。我也尝试使用命令folder.setOwner(User),再次收到相同的错误消息。
var rootfolder = DriveApp.getFolderById(folderId);
rootfolder.setOwner("email@domain.com"); //line x
或
var newOwner = DriveApp.getFileById(FileId).getOwner();
var rootfolder = DriveApp.getFolderById(folderId);
rootfolder.setOwner(newOwner); //line x
注意:“ FileId”来自公共文件
我也尝试了此代码,该代码有效。我从Google云端硬盘收到电子邮件,其中已将给定的文件夹从我转移到了我。
var rootfolder = DriveApp.getFolderById(folderId);
rootfolder.setOwner(rootfolder.getOwner());
但是我不想将其转移给我自己,而是转移给其他人。
(我在我的个人帐户和GSuite帐户上尝试了该帐户,然后在个人帐户和GSuite帐户上进行了尝试,并且之间的所有可能性均无效,
答案 0 :(得分:1)
我很傻,答案很简单。我无法在我的GSuite帐户之外共享。如果我尝试将所有权转让给您的GSuite帐户内的用户,那么它可以正常工作!
该代码是100%正确的。