C# Google Drive:在身份验证期间捕获事件

C# Google Drive:在身份验证期间捕获事件,c#,.net,oauth-2.0,google-drive-api,C#,.net,Oauth 2.0,Google Drive Api,我正在开发一个Windows桌面应用程序,它可以与用户的Google Drive帐户进行通信。我已经成功地创建了这个应用程序,它工作得非常好,正是我想要的方式。我遵循了本网站上的教程: 但有一件事我搞不清楚,那就是如何从身份验证过程中捕获事件。当GoogleWebAuthorizationBroker.AuthorizationAsync启动web浏览器以允许用户进行身份验证时,如果用户单击“取消”以禁止,则API将抛出错误。这就是我知道身份验证没有通过的原因 但是,当用户关闭浏览器窗口而不是单

我正在开发一个Windows桌面应用程序,它可以与用户的Google Drive帐户进行通信。我已经成功地创建了这个应用程序,它工作得非常好,正是我想要的方式。我遵循了本网站上的教程:

但有一件事我搞不清楚,那就是如何从身份验证过程中捕获事件。当GoogleWebAuthorizationBroker.AuthorizationAsync启动web浏览器以允许用户进行身份验证时,如果用户单击“取消”以禁止,则API将抛出错误。这就是我知道身份验证没有通过的原因

但是,当用户关闭浏览器窗口而不是单击“取消”时,我的应用程序会一直处于停滞状态,等待用户的响应。当用户关闭浏览器窗口以便我的应用程序可以继续运行时,我如何捕获事件


谢谢。

我找到了一个办法。与其尝试从Google的OAuth API捕获事件,不如自己编写OAuth身份验证。我在c#中创建了一个包含webbrowser的winform,并通过它进行所有通信和用户同意。所以,如果用户关闭窗口,我就会知道


参考

在Web应用程序上,您打开新选项卡时,所有者为当前选项卡,以便在其关闭时收到通知。不知道csharp浏览器窗口是否打开