我一直在寻找解决问题的方法,但一无所获。如何获取由您将其设置为打开的默认程序打开的文件?例如:如果我有一个名为HelloWorld.hello
的文件,我进行了设置,以便在单击文件时打开名为Hello.exe
的程序。如何获取正在启动的文件Hello.exe
?
答案 0 :(得分:1)
问题是调用"执行HelloWorld.exe
"通过编程到操作系统中的通用方法 - 它定义为操作执行请求的操作系统功能。因此,你得到的最多的是你的内核,是什么推动了我?"
编辑如果您想获取正在执行当前代码的程序,即应用程序的入口点,可以通过Environment.CommandLine
访问该程序。除非你构建一个由多个可执行文件访问的库,否则这不是很有用,如果你这样做,很少有情况下库应知道它们在调用它。< / p>
如果您可以控制调用函数,您可能需要考虑在启动期间将一些参数传入目标程序 - 可以通过string[]
Main
参数访问这些参数
编辑详细说明将信息传递到Main
的选项,您实际上可以使用Main
方法的多个签名之一。使用以下内容:
static void Main(string[] args)
将获取任何命令行参数并将它们传递到args
数组中。因此,如果您将程序HelloWorld.exe
(在Windows中)称为
HelloWorld "alpha beta" delta gamma
然后args
将包含["alpha beta", "delta", "gamma"]
个值。因此,传入标志或启用命令行参数成为可能