hnfeng 发表于 2023-4-15 19:57:47

[已解决]请教:有无办法区分“双击”与“在cmd中无参数运行”?

本帖最后由 hnfeng 于 2023-4-16 08:34 编辑

编译好的命令行程序,在双击时以及在CMD里面无参数运行时,想产生不同的结果,但两种情况下 都是 $CmdLine = 0,有无其他办法获取是那种操作方式?



谢谢

zghwelcome 发表于 2023-4-15 21:08:39




#include <WinAPIProc.au3>
Local $iParentPID = _WinAPI_GetParentProcess()
Local $sParentProcessName = _WinAPI_GetProcessName($iParentPID)
Switch StringLower($sParentProcessName)
        Case 'explorer.exe'
                MsgBox(512,'','从资源管理器双击打开')
        Case 'cmd.exe'
                MsgBox(512,'','cmd调用打开')
        Case Else
                MsgBox(512,'','由' & $sParentProcessName & '启动')
EndSwitch


zghwelcome 发表于 2023-4-15 20:10:49

判断父进程

hnfeng 发表于 2023-4-15 20:48:13

zghwelcome 发表于 2023-4-15 20:10
判断父进程

请教 如何判断父进程?

hnfeng 发表于 2023-4-15 21:05:16

If WinExists(@ScriptFullPath) Then
貌似可以,此时是 双击

hnfeng 发表于 2023-4-16 08:25:15

zghwelcome 发表于 2023-4-15 21:08


多谢多谢

zdphj 发表于 2023-4-21 12:37:07

zghwelcome 发表于 2023-4-15 21:08


厉害厉害,学习了。
页: [1]
查看完整版本: [已解决]请教:有无办法区分“双击”与“在cmd中无参数运行”?