【发布时间】:2012-06-07 23:59:36
【问题描述】:
我想使用 C# 创建一个用于发送电子邮件的 exe 文件。我想使用批处理文件调用这个 exe。我应该创建一个 Web 表单应用程序还是只创建一个类库?可以从命令提示符使用批处理文件调用 exe 吗?
请提出建议。
【问题讨论】:
标签: c# batch-file
我想使用 C# 创建一个用于发送电子邮件的 exe 文件。我想使用批处理文件调用这个 exe。我应该创建一个 Web 表单应用程序还是只创建一个类库?可以从命令提示符使用批处理文件调用 exe 吗?
请提出建议。
【问题讨论】:
标签: c# batch-file
通常,如果您想从命令行调用应用程序,您需要创建一个控制台应用程序。
这允许您的命令提示符调用应用程序并(可选)接受来自控制台(提示符)的输入以及将输出写入控制台(通过Console class)。
您也可以直接从控制台应用程序的 Main 例程中读取命令行参数。
【讨论】:
编写一个在命令行上接受参数的控制台应用程序。然后您可以从脚本(即批处理文件)中调用它。您传递的参数可能包含电子邮件的所有元素 - 正文可能有点大,我不确定字符串 args 的长度的限制(如果有的话),但只要正文是合理的大小你会没事的。
我更喜欢将这样的“工具”编写为控制台应用程序(而不是 Windows 应用程序),因为您在执行应用程序方面具有很大的灵活性。您可以通过键入 cmd.exe(命令行)直接调用它,您可以编写一个脚本来调用它(如您所建议的那样),您可以编写另一个可以调用它的 .NET 应用程序,等等... A Windows 应用只有一种调用方法。
【讨论】:
当然。创建应用程序,并将二进制 exe 存储在某个文件夹(即 C:\folder)中。
如果您的 exe 名称为“name.exe”,请在批处理文件中写入
cd C:\folder
name
这适用于所有类型的应用程序,您可以在这两种应用程序中访问命令行数据,但在控制台应用程序中最简单。
你会写:
cd C:\Users\asif\Desktop\EmailSender\ConsoleApplication1\bin\Debug\
::Space here
ConsoleApplication1
换行。
【讨论】: