Sign in to follow this  
Followers 0
kcd-clan

12 hours of no solution and need help

8 posts in this topic

Here is what we have.

command("test",'0,"test","ahhh"')

Func test($msg1,$msg2,$msg3,$msg4=0)
MsgBox($msg1, $msg2, $msg3,$msg4)
EndFunc

Func command($cmd$,$myArray)
Call($cmd, $myArray)
EndFunc

I think this should do as far as information.

I extracted it and simplified because to real code has alot of loops and user defined function calls.

Once i get this missing piece i can move on.

Bassically the issue i think i have is, I call command and array isnt defined so it will error itself.

My debugger i made tells me invalid command...

IDK just posting this makes me think maybe the issue isnt the array.


Visit mEMy programs made.Iul - IulG-V Console - G-V Console_RandomLetter - _RandomLetter()Saftey Kill - Saftey Killcolorzone() = colorzone()

Share this post


Link to post
Share on other sites

You need to learn the language a little more: You cannot pass >2 arguments to a function that waits only 2

The solution to avoid messy code is the Execute function

$sCmd = 'MsgBox(0, "Test", "Hi!")'
Execute($sCmd)

Share this post


Link to post
Share on other sites

You need to learn the language a little more: You cannot pass >2 arguments to a function that waits only 2

WOOOOOH

TY much.

The solution to avoid messy code is the Execute function

$sCmd = 'MsgBox(0, "Test", "Hi!")'
Execute($sCmd)


Visit mEMy programs made.Iul - IulG-V Console - G-V Console_RandomLetter - _RandomLetter()Saftey Kill - Saftey Killcolorzone() = colorzone()

Share this post


Link to post
Share on other sites

This is another example to call from an Array, I found it in the FORUM and it was written by Trancexx

Func CallArrayEx($sFuncName, $aNew)

$aRet = $sFuncName & "("
For $n = 0 To UBound($aNew) - 1
$aRet &= "$aNew[" & $n & "],"
Next
;Execute
$aRet = Execute(StringTrimRight($aRet, 1) & ")")
;Finally return
Return SetError(@error, @extended, $aRet)

EndFunc   ;==>CallArrayEx

Local $aParameters[3] = [64, "Hello There", "Tested Successfully"]
CallArrayEx("MsgBox", $aParameters)

$aParameters = "64|Hello There|Tested Successfully"
CallArrayEx("MsgBox", StringSplit($aParameters, "|", 2))


My code:

PredictText: Predict Text of an Edit Control Like Scite. Remote Gmail: Execute your Scripts through Gmail. StringRegExp:Share and learn RegExp.

Run As System: A command line wrapper around PSEXEC.exe to execute your apps scripts as System (LSA). Database: An easier approach for _SQ_LITE beginners.

MathsEx: A UDF for Fractions and LCM, GCF/HCF. FloatingText: An UDF for make your text floating. Clipboard Extendor: A clipboard monitoring tool. 

Custom ScrollBar: Scroll Bar made with GDI+, user can use bitmaps instead. RestrictEdit_SRE: Restrict text in an Edit Control through a Regular Expression.

Share this post


Link to post
Share on other sites

What you pass here as parameter 2 isn't an array. It's just a string:

command("test",'0,"test","ahhh"')
Use function StringSplit to create an array from this string.

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

I have elaborated what Water said

Local $aSplit = StringSplit('0,"test","ahhh"', ",")
$aSplit[0] = "CallArgArray" ;First element should be this string according to the Help File.
command("test", $aSplit)

Func test($msg1, $msg2, $msg3, $msg4 = 0)
MsgBox($msg1, $msg2, $msg3, $msg4)
EndFunc   ;==>test

Func command($cmd, $myArray)
Call($cmd, $myArray)
EndFunc   ;==>command


My code:

PredictText: Predict Text of an Edit Control Like Scite. Remote Gmail: Execute your Scripts through Gmail. StringRegExp:Share and learn RegExp.

Run As System: A command line wrapper around PSEXEC.exe to execute your apps scripts as System (LSA). Database: An easier approach for _SQ_LITE beginners.

MathsEx: A UDF for Fractions and LCM, GCF/HCF. FloatingText: An UDF for make your text floating. Clipboard Extendor: A clipboard monitoring tool. 

Custom ScrollBar: Scroll Bar made with GDI+, user can use bitmaps instead. RestrictEdit_SRE: Restrict text in an Edit Control through a Regular Expression.

Share this post


Link to post
Share on other sites

Great! Learned something new today :)


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
Sign in to follow this  
Followers 0