Я создал чистящее приложение (C #), которое записывает результаты в частный Google Sheet.
Когда я запускаю приложение в режиме отладки, оно работает как положено и аутентифицируется.Тем не менее, когда я запускаю его как задачу, здесь происходит сбой аутентификации ...
using (var stream =
new FileStream("credentials.json", FileMode.Open, FileAccess.Read))
{
string credPath = Environment.GetFolderPath(Environment.SpecialFolder.Personal);
credPath = Path.Combine(credPath, ".credentials/sheets.googleapis.com-dotnet-quickstart.json");
credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
GoogleClientSecrets.Load(stream).Secrets,
Scopes,
"user",
CancellationToken.None,
new FileDataStore(credPath, true)).Result;
Console.WriteLine("Credential file saved to: " + credPath);
}
У меня есть файл credentials.json, настроенный для копирования всегда в проекте, и он копируется в bin / debugи папки bin / release при компиляции.
Я получаю ошибку (только при запуске в планировщике задач): ....
Unhandled Exception: System.IO.FileNotFoundException: Could not find file
'C:\WINDOWS\system32\credentials.json'.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access,
Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize,
FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean
bFromProxy, Boolean useLongPath, Boolean checkHost)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access)
at ScreenScraper.Program.AuthorizeGoogleApp() in
C:\Users\xxx\Documents\Visual Studio
2017\Projects\ScreenScraper\ScreenScraper\Program.cs:line 74
at ScreenScraper.Program.Main(String[] args) in C:\Users\xxx\Documents\Visual
Studio 2017\Projects\ScreenScraper\ScreenScraper\Program.cs:line 38
Затем я скопировал учетные данные.JSON в C: \ WINDOWS \ system32 \, но я все еще получаю сообщение об ошибке.