批處理測試需要使用存儲在同一目錄中的.xml文件中的配置從終端調用現有winforms應用程序(比如MyApp.exe)作爲.exe(比如MyAppConfig.xml)。爲了能夠從終端呼叫start /realtime c:\MyApp.exe /config="MyAppConfig.xml"
,我應該在應用程序上做出哪些更改。任何人都可以指出我如何實現這一功能的正確方向?幫助讚賞。使用terminal命令運行winform應用程序,並將配置xml文件作爲命令參數提供
0
A
回答
2
在您的應用程序的Program.cs
文件中,您會找到您的應用程序入口點Main()
方法。更改其簽名並添加將保存參數的數組string
。然後,檢查參數並實施您的邏輯。
事情是這樣的:
static void Main(string[] startArgs)
{
if (startArgs.Length == 0)
{
//show messagebox stating that there's no parameters or something else
}
else
{
var configArg = startArgs.FirstOrDefault(s => s.StartsWith("config"));
if (configArg == null)
{
//config parameter is missing
}
else
{
string xml = configArg.Split('=')[1];
//xml holds your path to your xml file.
//Now you can pass it to form, or load it here
//XmlDocument doc = new XmlDocument();
//doc.Load(xml);
//etc...
}
}
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
如果您計劃擁有多個命令行參數,你應該尋找NET CLI庫,它是Apache的百科全書CLI API的.NET端口,用於解析命令行參數。 ..
2
在構建控制檯或表單應用程序時,Main方法通常用作代碼的入口點。它將一串字符串作爲參數傳遞給CLI。
public static void Main(string[] args)
{
for(int i = 0; i < args.Length; i++)
{
Console.WriteLine("Argument #{0} = {1}", i, args[i]);
}
}
所以運行program.exe FOO BAR
會導致:
Argument #0 = FOO
Argument #1 = BAR
你也可以使用program.exe config="MyAppConfig.xml"
符號,使參數順序,獨立的,但你必須做一些解析自己。
相關問題
- 1. 使用配置文件而不是命令行參數配置gnome-terminal
- 2. XML文件作爲命令行參數,並解析在Python
- 3. 使用命令行參數將文件傳遞給程序
- 4. 爲文件中的函數提供命令行參數
- 5. 運行命令行命令的Windows應用程序
- 6. 如何讓Visual Studio使用/ RunExit並提供我的程序命令行參數?
- 7. 在命令提示符下使用c#爲wpf應用程序執行命令
- 8. 如何使用內置的命令行參數運行java應用程序?
- 9. 使用命令行參數運行eclipse
- 10. 從命令提示符下使用自定義命令參數運行WPF應用程序
- 11. 使用命令行參數從bat文件運行exe文件
- 12. Bash /打開一個命令運行的命令作爲參數
- 13. 提供命令行參數給jboss standalone.sh
- 14. 使用IntelliJ IDEA中的命令行程序運行配置
- 15. 如何來運行命令行應用程序的Clojure參數
- 16. 無法使用SOURCE命令運行sql文件windows命令行
- 17. 如何使用變量命令行參數運行程序?
- 18. 使用Ant通過命令行參數運行程序
- 19. 運行命令行參數
- 20. 運行命令行參數
- 21. 在BASH中使用文件內容作爲命令行參數
- 22. Plesk - 應用配置 - 命令
- 23. 使用命令行參數運行PostgreSQL .sql文件
- 24. 使用命令行參數運行jar文件
- 25. 使用命令行參數啓動應用程序
- 26. 使用ini文件參數從python運行windows命令行程序
- 27. 雙命令在命令提示符下運行程序
- 28. 運行命令來自C#程序的提示命令
- 29. 提取命令行參數
- 30. 運行命令行程序
非常感謝你,非常完整和乾淨的解釋! –
@MiroslavRadojević很高興我能幫到你。 Sretno! ;) – Nino