troubleshooting Question

How can I get the process id of a currently running HTA applicaiton?

Avatar of tighec
tighec asked on
HTMLScripting LanguagesVB Script
12 Comments1 Solution1896 ViewsLast Modified:
If I know the commandline exactly then I can search WIN32_Process and get it that way however if more than one insance running then it would not return the current process, but a collection with all the instances.
One (ugly) way to do it is the code below, essentially using exec to launch a new process, then get the parentprocessid of that process.
Dim oExec
Set oExec = objShell.exec("%comspec% /c dir")
Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_Process Where ProcessId = " & oExec.processid , "WQL", wbemFlagReturnImmediately + wbemFlagForwardOnly)
For Each objItem In colItems
	iHTAProcessID = objItem.ParentProcessId
Next
ASKER CERTIFIED SOLUTION
tighec

Our community of experts have been thoroughly vetted for their expertise and industry experience.

Join our community to see this answer!
Unlock 1 Answer and 12 Comments.
Start Free Trial
Learn from the best

Network and collaborate with thousands of CTOs, CISOs, and IT Pros rooting for you and your success.

Andrew Hancock - VMware vExpert
See if this solution works for you by signing up for a 7 day free trial.
Unlock 1 Answer and 12 Comments.
Try for 7 days

”The time we save is the biggest benefit of E-E to our team. What could take multiple guys 2 hours or more each to find is accessed in around 15 minutes on Experts Exchange.

-Mike Kapnisakis, Warner Bros