![](/img/trans.png)
[英]Not getting “Publisher” information for an Install Shield “.exe” file. While launching the Application
[英]Getting file that is launching exe
我一直在寻找解决问题的方法,但没有发现任何问题。 如何获取被设置为打开程序的默认程序正在打开的文件? 例如:如果我有一个名为HelloWorld.hello
的文件,并且将其设置为单击该文件时将打开一个名为Hello.exe
的程序。 我如何获取正在启动Hello.exe
的文件?
问题在于,对“ execute HelloWorld.exe
”的调用会通过编程到OS中的通用方法进行处理-根据定义,这是一个OS函数来处理执行请求。 因此,您获得的最大收获就是您“启动了我什么?”的核心。
编辑如果要获取正在执行当前代码的程序,即应用程序的入口点,则可以通过Environment.CommandLine
访问。 除非您要构建一个可被多个可执行文件访问的库,否则它不是很有用,如果是这样,则在少数情况下该库应该知道调用它的对象。
如果您可以控制调用函数,则可能要考虑在启动时将一些参数传递到目标程序中-可通过Main
的string[]
参数访问这些参数。
编辑详细说明将信息传递给Main
的选项,实际上您可以为Main
方法使用多个签名之一。 使用以下内容:
static void Main(string[] args)
将接受任何命令行参数,并将其传递到args
数组。 因此,如果您以以下方式调用程序HelloWorld.exe
(在Windows中)
HelloWorld "alpha beta" delta gamma
那么args
将包含["alpha beta", "delta", "gamma"]
值。 因此,可以传递标志或启用命令行参数
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.