【问题标题】:.Net Framework/C# - --grpc_out: protoc-gen-grpc: Access is denied issue.Net Framework/C# - --grpc_out:protoc-gen-grpc:访问被拒绝问题
【发布时间】:2020-01-06 16:27:17
【问题描述】:

我有一个 .Net 4.7.2 项目,并且我已经使用 NuGet 包 v2.26.0 设置了我的消息项目。我的环境文件路径中有 protoc,可以运行 protoc --version 等命令。

在尝试生成我的 grpc 代码时,我运行以下命令:

C:\Samples\MyGrpc>protoc -I .\pb --csharp_out .\Grpc\Messages .\pb\messages.proto --grpc_out .\Grpc\Messages --plugin=protoc-gen-grpc=。 \Grpc\packages\Grpc.Tools.2.26.0\tools\windows_x64 --grpc_out: protoc-gen-grpc: 访问被拒绝。

我正在以管理员身份打开的 Windows cmd 提示符运行此命令。

我的主要 Visual Studio 项目文件夹是 Grpc,下面有 Message 项目。

我不确定我被拒绝访问的内容。有什么想法吗?

谢谢!

【问题讨论】:

    标签: protocol-buffers


    【解决方案1】:

    我发现问题在于,在 --plugin 命令中,我必须输入插件可执行文件的名称,即包括 .exe 名称的整个路径。那时它起作用了。

    C:\Samples\MyGrpc>protoc -I .\pb --csharp_out .\Grpc\Messages .\pb\messages.proto --grpc_out .\Grpc\Messages --plugin=protoc-gen-grpc=。 \Grpc\packages\Grpc.Tools.2.26.0\tools\windows_x64\grpc_csharp_plugin.exe

    谢谢!

    【讨论】:

    • 您应该接受您的回答作为您问题的真实答案;因为通过其绝对或相对路径调用grpc_csharp_plugin.exe,其全名是正确答案。
    猜你喜欢
    • 2010-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-31
    • 2021-09-18
    • 2012-09-05
    相关资源
    最近更新 更多