我有.xml文件来存储我的应用程序中的数据。
现在我想点击.xml文件 - >使用从.xml文件加载的数据启动我的应用程序。
是什么让应用程序运行xml解析方法?
我不知道如何做到这一点,当我用我的应用程序打开.xml文件时会发生什么? Windows是否使用.xml文件路径获取应用程序某种参数?另外WPF似乎没有Main()方法,它通常处理这些参数。
知道该怎么做吗?
答案 0 :(得分:0)
首先,您无法通过单击xml文件来运行应用程序。你会做的是通过按钮点击或通过文件阅读器或流阅读器读取xml文件的任何事件调用一些方法,并获取这些内容并拥有xmldocument doc = new xmldocument()。然后是doc.LoadXml(filecontents)。然后,您可以使用内置的C#.NET方法解析文档,例如doc.SelectSingleNode(节点名称)。
答案 1 :(得分:0)
如果您正在尝试找出与特定文件扩展名相关联的程序,那么有两种方法可以以编程方式执行此操作。第一种方法是执行名为FindExecutable的Win32方法。 DllImport看起来像这样:
[DllImport("shell32.dll")]
static extern int FindExecutable(string lpFile, string lpDirectory, [Out] StringBuilder lpResult);
第二种方法是查看注册表。要找出双击XML文件的应用程序将会打开,您可以查看HKEY_CLASSES_ROOT\.xml
。然后,您按照shell/open/command
的条目进行操作。这将为您提供打开文件的应用程序名称和路径。
答案 2 :(得分:0)
所以这就是我所做的:
当我用我的应用程序打开它时,我创建了自己的文件扩展名.xxx(里面只有普通的xml)我使用
检查启动窗口的构造函数中的参数计数Environment.GetCommandLineArgs()
如果计数> 1我得到第二个参数,它是带有文件绝对路径的字符串。然后我将字符串提取到处理文件打开的方法。