mihaijulien

ProcessList() with partial process name

6 posts in this topic

#1 ·  Posted (edited)

Is there a way to retrieve a

ProcessList("[name]")

having as parameter only a part of the name?

Edited by mihaijulien

Share this post


Link to post
Share on other sites



#2 ·  Posted

I don't know if that's possible with that function. Can you explain a little more what you're trying to do? Maybe we can suggest another way to go about it.


UHJvZmVzc2lvbmFsIENvbXB1dGVyZXI=

Share this post


Link to post
Share on other sites

#3 ·  Posted

The fastest way is to check it yourself with a little test script :)


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites

#4 ·  Posted (edited)

mihjijulien,

A simple example, no wild cards, no error checking...

#include <array.au3>

_ArrayDisplay(_MyProcessList('xplor'))

Func _MyProcessList($str)

    Local $alist = ProcessList(), $ret
    For $1 = 0 To UBound($alist) - 1
        If StringInStr($alist[$1][0], $str) Then $ret &= $alist[$1][0] & '|'
    Next

    Return StringSplit(StringTrimRight($ret, 1), '|')

EndFunc   ;==>_MyProcessList

kylomas

edit: just dick'in around...another way...

Func _MyProcessList2($str)

    Local $list = _ArrayToString(ProcessList())
    Return StringRegExp($list, '(.*' & $str & '.*)\|', 3)

EndFunc   ;==>_MyProcessList2

 

Edited by kylomas
1 person likes this

Forum Rules         Procedure for posting code

"I like pigs.  Dogs look up to us.  Cats look down on us.  Pigs treat us as equals."

- Sir Winston Churchill

Share this post


Link to post
Share on other sites

#5 ·  Posted

11 hours ago, kylomas said:

mihjijulien,

A simple example, no wild cards, no error checking...

#include <array.au3>

_ArrayDisplay(_MyProcessList('xplor'))

Func _MyProcessList($str)

    Local $alist = ProcessList(), $ret
    For $1 = 0 To UBound($alist) - 1
        If StringInStr($alist[$1][0], $str) Then $ret &= $alist[$1][0] & '|'
    Next

    Return StringSplit(StringTrimRight($ret, 1), '|')

EndFunc   ;==>_MyProcessList

kylomas

edit: just dick'in around...another way...

Func _MyProcessList2($str)

    Local $list = _ArrayToString(ProcessList())
    Return StringRegExp($list, '(.*' & $str & '.*)\|', 3)

EndFunc   ;==>_MyProcessList2

 

That was exactly what I was looking for. I thought that there was something built-in but those 2 functions are the way to do it.

Thank you. :)

Share this post


Link to post
Share on other sites

#6 ·  Posted

NB:
There is no need to fully quote the post you want to reply to. Means: use the Reply not the Quote button.
Makes a thread much easier to read ;)


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now