簡體   English   中英

在我的計算機上輸出程序功能,但在其他用戶的計算機上沒有

[英]Outputted program functions on my computer but not other user's computer

我創建了一個連接到 Google firestore 的程序,並將它提供給了我的朋友。 該程序旨在將一個或多個字符表同步在一起,但是當我的朋友嘗試運行該程序時,似乎沒有任何反應。

我試過了:

  • 給他所有位於 bin\Release 文件夾中的文件
  • 使用依賴項沒有出現
  • 安裝 VC 可再發行組件
  • 在虛擬機上安裝全新的 windows 安裝
  • 檢查設置文件。

在 bin\Release 中找到的東西的列表

11/03/2019  12:36 AM            79,872 Empty.exe
11/03/2019  12:36 AM             2,528 Empty.exe.config
11/03/2019  12:36 AM           148,992 Empty.pdb
11/03/2019  12:36 AM           253,440 Google.Api.CommonProtos.dll
11/03/2019  12:36 AM            85,684 Google.Api.CommonProtos.pdb
11/03/2019  12:36 AM            67,072 Google.Api.Gax.dll
11/03/2019  12:36 AM            61,440 Google.Api.Gax.Grpc.dll
11/03/2019  12:36 AM            14,716 Google.Api.Gax.Grpc.pdb
11/03/2019  12:36 AM            20,316 Google.Api.Gax.pdb
11/03/2019  12:36 AM           113,664 Google.Apis.Auth.dll
11/03/2019  12:36 AM            29,984 Google.Apis.Auth.pdb
11/03/2019  12:36 AM             5,120 Google.Apis.Auth.PlatformServices.dll
11/03/2019  12:36 AM            67,072 Google.Apis.Core.dll
11/03/2019  12:36 AM            20,100 Google.Apis.Core.pdb
11/03/2019  12:36 AM            72,192 Google.Apis.dll
11/03/2019  12:36 AM            17,516 Google.Apis.pdb
11/03/2019  12:36 AM             4,608 Google.Apis.PlatformServices.dll
11/03/2019  12:36 AM           148,992 Google.Cloud.Firestore.dll
11/03/2019  12:36 AM            46,120 Google.Cloud.Firestore.pdb
11/03/2019  12:36 AM           213,504 Google.Cloud.Firestore.V1.dll
11/03/2019  12:36 AM            69,728 Google.Cloud.Firestore.V1.pdb
11/03/2019  12:36 AM            44,544 Google.LongRunning.dll
11/03/2019  12:36 AM            12,088 Google.LongRunning.pdb
11/03/2019  12:36 AM           332,272 Google.Protobuf.dll
11/03/2019  12:36 AM           120,800 Google.Protobuf.pdb
11/03/2019  12:36 AM            15,344 Grpc.Auth.dll
11/03/2019  12:36 AM             3,632 Grpc.Auth.pdb
11/03/2019  12:36 AM            42,992 Grpc.Core.Api.dll
11/03/2019  12:36 AM            13,708 Grpc.Core.Api.pdb
11/03/2019  12:36 AM           468,464 Grpc.Core.dll
11/03/2019  12:36 AM            53,276 Grpc.Core.pdb
11/03/2019  12:36 AM         4,194,800 grpc_csharp_ext.x64.dll
11/03/2019  12:36 AM         3,170,800 grpc_csharp_ext.x86.dll
11/03/2019  12:36 AM         4,082,080 libgrpc_csharp_ext.x64.dylib
11/03/2019  12:36 AM        22,817,328 libgrpc_csharp_ext.x64.so
11/03/2019  12:36 AM         3,536,148 libgrpc_csharp_ext.x86.dylib
11/03/2019  12:36 AM        18,714,448 libgrpc_csharp_ext.x86.so
11/03/2019  12:36 AM           662,528 Newtonsoft.Json.dll
11/03/2019  12:36 AM           180,624 System.Collections.Immutable.dll
11/03/2019  12:36 AM           252,344 System.Interactive.Async.dll
11/03/2019  12:36 AM            25,232 System.ValueTuple.dll

我是一個新的 c# 程序員,這是我制作的第一個 c# 程序。 如果我錯過了什么,請指出我正確的方向。

編輯:

事件查看器日志:

信息:

Fault bucket 2141801032250789995, type 5
Event Name: CLR20r3
Response: Not available
Cab Id: 0

Problem signature:
P1: Empty.exe
P2: 1.0.0.0
P3: 93c944a7
P4: Google.Apis.Auth
P5: 1.40.2.0
P6: 80c50d57
P7: 1b9
P8: 17f
P9: System.InvalidOperationException
P10: 

Attached files:
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WERA93D.tmp.dmp
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WERA9FA.tmp.WERInternalMetadata.xml
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WERAA0A.tmp.xml
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WERAA08.tmp.csv
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WERAA29.tmp.txt

These files may be available here:
\\?\C:\ProgramData\Microsoft\Windows\WER\ReportArchive\AppCrash_Empty.exe_c3557acbf2e4bc5cb517f9badc695114e415ad_a51ad147_6ec24a04-dfa7-427e-9e49-9a8223fcc5ac

Analysis symbol: 
Rechecking for solution: 0
Report Id: 544b0265-25ce-4c40-be06-869499ad7bf2
Report Status: 268435456
Hashed bucket: 1231502c6efec9389db934b0eadf906b
Cab Guid: 0

錯誤:

Faulting application name: Empty.exe, version: 1.0.0.0, time stamp: 0x93c944a7
Faulting module name: KERNELBASE.dll, version: 10.0.18362.356, time stamp: 0x8c4198ab
Exception code: 0xe0434352
Fault offset: 0x00113522
Faulting process id: 0x179c
Faulting application start time: 0x01d592262c2375c7
Faulting application path: C:\Users\Dovenchiko\Desktop\Foo\Empty.exe
Faulting module path: C:\Windows\System32\KERNELBASE.dll
Report Id: 544b0265-25ce-4c40-be06-869499ad7bf2
Faulting package full name: 
Faulting package-relative application ID: 

錯誤:

Application: Empty.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.InvalidOperationException
   at Google.Apis.Auth.OAuth2.DefaultCredentialProvider+<CreateDefaultCredentialAsync>d__11.MoveNext()
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(System.Threading.Tasks.Task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task)
   at Google.Api.Gax.Grpc.ChannelPool+<CreateChannelCredentialsUncached>d__6.MoveNext()
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Google.Api.Gax.TaskExtensions.WaitWithUnwrappedExceptions(System.Threading.Tasks.Task)
   at Google.Api.Gax.Grpc.ChannelPool.GetChannel(Google.Api.Gax.Grpc.ServiceEndpoint, System.Collections.Generic.IEnumerable`1<Grpc.Core.ChannelOption>)
   at Empty.Form1..ctor()
   at Empty.Program.Main()

由於at Google.Apis.Auth.OAuth2.DefaultCredentialProvider+行,看起來我需要以某種方式對其他計算機上的會話進行身份驗證。 除此之外, at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task)行讓我擔心,因為這是一個發布版本。

無論如何,如果這是一個身份驗證問題,我該如何解決它?

我聯系了 Firebase 支持,看看我是否能對這個主題有所了解。 為了能夠使用 firestore 庫運行 C# 應用程序,我需要一個未實現的功能。 仍然允許程序運行並登錄 function 的東西。 目前,此功能在創建移動應用程序和 web 應用程序時實現,但不是 C# 應用程序時實現。 但是,似乎將來會添加它。

日期:2019 年 11 月 5 日星期二 00:57:52 +0000 (GMT)

來自:Firebase 支持

收件人:“MY_EMAIL”<MY_EMAIL>

主題:RE:案例******34:允許程序在沒有環境變量的情況下在其他計算機上運行

你好 *****,

感謝您伸出援手!

我是喬爾,很樂意在這里為您提供幫助。

我想先告訴你,官方的 C# Admin SDK 還不支持實時數據庫和 Firestore。 您可以在此處查看支持。

現在,您可能會參考 GOOGLE_APPLICATION_CREDENTIALS 環境變量來使用 Firebase 對您的應用程序進行身份驗證。

Firebase主要面向移動應用,Web應用也有空間。 為了管理這些應用程序的不同方面,Admin SDK 出現了,但它面向在服務器上工作(用於管理應用程序。),這就是為什么用 Firebase 標識你的管理應用程序是必要的; 完成項目管理任務。

您可以構建 web 應用程序或移動應用程序,以充分利用 Firebase 服務。 但不幸的是,尚未提供對 C# 的完全支持。 該團隊已經在處理此功能請求,但目前...[還沒有]。

如果您有更多問題,請告訴我。

干杯,喬爾

如此所述,並在支持 email 中提到,您需要使用GOOGLE_APPLICATION_CREDENTIALS

Firebase 支持正在談論 Firebase SDK,但您使用的是確實支持本地身份驗證的Google Cloud 庫

要使其在本地工作,您需要遵循auth 文檔,我假設您已經這樣做了。

您的朋友要使其正常工作,必須對他們的服務帳戶執行相同的步驟,然后您必須更新 Firesotre 的權限(根據這些文檔),以便為您朋友的服務帳戶提供正確的訪問權限。

還有其他身份驗證選項,所有選項都與您正在使用的 Google Cloud 庫兼容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM