【发布时间】:2023-03-25 06:23:01
【问题描述】:
我需要在 VB.net 中自动使用命令行实用程序。这是一个例子。
从代码中,我需要使用命令行实用程序解密文件。这是命令行过程。
您使用此行启动实用程序
C:\gnupg>gpg --decrypt c:\temp\File_Encr.xml
一旦执行,就会显示这个
You need a passphrase to unlock the secret key for
user: "xxxx <abc@def.com>"
1024-bit ELG-E key, ID ABCD, created 2013-10-25 (main key ID DEF)
输入密码:
当您输入密码时,它就可以完成工作。 我需要从代码(VB.NET)开始这个过程并输入密码,这样它就不需要任何用户交互。我的代码将用于 Windows 服务以及 Web 应用程序。
有人可以帮忙吗?
谢谢。 萨默斯
【问题讨论】:
-
给定程序必须允许您将“用户输入”作为参数引入;您必须遵循给定问题的规则/语法。您所指程序的相关页面:spywarewarrior.com/uiuc/gpg/gpg-com-4.htm
-
我明白,如果是这样的话,我不需要花这么多时间在这件事上。问题是,当我们调用它时,程序似乎不支持通过命令行输入密码。它只在执行主命令行时询问。
-
如前所述,如果目标程序不允许您通过命令提示符与其交互,则无法进行。在最有可能的情况下,它允许您但您没有明确的确切语法。解决此问题的唯一方法(如果可能的话)是查看目标软件制造商提供的说明;除了(盲目的)试错之外,您无能为力(通过 Process 类)。
标签: vb.net command-line command-line-arguments command-prompt