VB 判断程序运作的是源程序 还是从启动栏运行 或者快捷方式

VB 判断程序运行的是源程序 还是从启动栏运行 或者快捷方式
我现在做一个程序,需要判断程序运行后,是通过启动项运行,还是手动运行源程序?

搜了些资料说 通过命令参数来做--运行exe不会传递参数,启动项可以传递参数?
但具体怎么做?

注意一点是:我是要知道怎么将参数传进去给Command()(不是命令行),而不是Command()函数有值后怎么做
VB 判断程序来源

------解决方案--------------------
应该可以使用command来判断,但必须设置在ide菜单上,工程-属性-生成-命令行参数来设置一个特殊的值,比如“…&……%…&%&(fhgf(*&……¥”

然后在form_load中检查command参数

if command="“…&……%…&%&(fhgf(*&……¥”"then
msgbox "运行于IDE"
else
msgbox "独立运行"
end if

command就是按上述方式使用,其实就是一个字符串,至于这个字符串要如何定义,安全看你想做什么了

------解决方案--------------------
从启动栏运行和从快捷方式运行是一样的,都是执行exe。不过如果是我们通过程序代码去创建的快捷方式,可以是不一样的,我们可以在创建快捷方式的时候在目标程序的那里加上程序的命令行。

例如举个最简单的例子来说明命令行是什么。假设编译之后的exe是:“E:\aaa.exe”,假设有一个名称为-shutcut的命令行。在通过Windows的运行窗口调用的时候就可以在运行窗口输入:
E:\aaa.exe -shutcut

(注意:“E:\aaa.exe”和“-shutcut”之间有一个空格不能少)按确定运行。

这样就和单纯地输入E:\aaa.exe有了区别,区别就是加入了一个-shutcut命令行。

这样在编写程序的时候就要我们能够知道传入的命令行是什么。我们可以使用command函数,不是按钮,区别开来。就以上面的例子来说,程序启动之后command函数获得的值是“-shutcut”,文本类型的。我们还可以换别的命令行,例如-123,那么command函数获得的值是“-123”。这样来说的话命令行的文本是无关紧要的,哪怕你的命令行只是“1”这个数字也没问题,你懂是什么意思就可以了。

再说一下怎么判断是不是在IDE里运行。我们在VB开发环境下,选择【工程】菜单的【工程1属性】(不一定是工程1,是你自己工程的名称),打开【工程1-工程属性】对话框,在选项卡中选择【生成】,下面就会有一个命令行,在里面输入例如“-IDE”,这是在VB中运行程序时VB会传进来的命令行,这时command函数获得的值是“-IDE”,这样你就知道现在是在开发环境里运行。填写好的工程属性对话框如下图所示:
VB 判断程序运作的是源程序 还是从启动栏运行 或者快捷方式
------解决方案--------------------
两种方式都是在 explorer.exe 下启动的独立进程,没有明确的区别。