ShellExecuteA with multiple parameters

 

Hi, could you please advice me how to pass multiple parameters to ShellExecuteA function.

The example bellow start sqlite3.exe, but does not pass any parameters ...

#define SW_HIDE 0

#define SW_SHOWNORMAL 1

#define SW_NORMAL 1

#define SW_SHOWMINIMIZED 2

#define SW_SHOWMAXIMIZED 3

#define SW_MAXIMIZE 3

#define SW_SHOWNOACTIVATE 4

#define SW_SHOW 5

#define SW_MINIMIZE 6

#define SW_SHOWMINNOACTIVE 7

#define SW_SHOWNA 8

#define SW_RESTORE 9

#define SW_SHOWDEFAULT 10

#define SW_FORCEMINIMIZE 11

#define SW_MAX 11

#define DEFDIRECTORY NULL

#define OPERATION "open"

#import "shell32.dll"

int ShellExecuteW(int hWnd, string Verb, string File, string Parameter, string Path, int ShowCommand);

#import

int init() { return(0); }

int deinit() { return(0); }

int start()

{

string str ="C:\\db\\sqlite\\sqlite3.exe";

string par="C:\\db\\sqlite\\orders.db";

string ins="""insert into orders values(7712,72,72,72,72,72,72,72)""";

Shell(str, par + " " + ins);

return(0);

}

bool Shell(string file, string parameters=""){

int r=ShellExecuteW(0, OPERATION, file, parameters, DEFDIRECTORY, SW_SHOW);

if (r <= 32){ Alert("Shell failed: ", r); return(false); }

return(true);

}

 
winters:
Hi, could you please advice me how to pass multiple parameters to ShellExecuteA function. The example bellow start sqlite3.exe, but does not pass any parameters ...

winters

if the parameters part requires "parameters value" format, replace ins variable with this :

string ins="\"insert into orders values(7712,72,72,72,72,72,72,72)\"";

 
mladen:
winters

if the parameters part requires "parameters value" format, replace ins variable with this :

string ins="\"insert into orders values(7712,72,72,72,72,72,72,72)\"";

Thank you !!!! this did the trick !!!

 
winters:
Thank you !!!! this did the trick !!!

Good. Happy coding and trading