Link to home
Start Free TrialLog in
Avatar of z018196
z018196

asked on

Passing Parameters thrrough and HTML link to an .exe

How do I create an link that passes parameters to an .exe?

Pretty much I needed to give my users a link that has the password ingrained in it already.
Avatar of David Lee
David Lee
Flag of United States of America image

Hi, z018196.

Create a script or command file that launches the exe and passes whatever information it requires.  Link to the script/command file.
Avatar of z018196
z018196

ASKER

The only problem is that I'd need a seperate script/command-file for each user... I was hoping only to have to make a unique link.  Is there any coding I can embed in the link?
> I'd need a seperate script/command-file for each user
Perhaps, but not necessarily.  You could retrieve the username in the script and use a CASE or IF ... THEN sequence to get the right password.  Something like this:

    Set WshProcessEnvironment = WshShell.Environment("Process")
    varUsername = wshProcessEnvironment.Item("UserName")
    Select Case varUsername
        Case "Username1"
            varPassword = "PasswordA"
        Case "Username2"
            varPassword = "PasswordB"
    End Select
    Set objShell = WScript.CreateObject("WScript.Shell")
    objShell.Run "C:\Somepath\MyExecutable.exe " & varPassword
Avatar of z018196

ASKER

I don't know if that will work in my case though.  Think of it like this.  I have a database(table) with a bunch of records and each of them has a unique identifier.  I was hoping I could send out an email, when a record is created, that would have the unique Id for that record included.  When the link was pushed, a report would get generated for that record.  I can create a VB.Net app that just asks for the unique ID but I was hoping to embed it into the link so that people couldn't just enter in any number.  Does that make sense?
Sure.  All you need to do is send a link with a parameter.  Something like

    http://company.com/somepage.aspx?id=UniqueID
Avatar of z018196

ASKER

how to capture that parameter?  Below is my code... can you tell me what I'm missing?  I can access the application correctly, which is good, now I just need to capture the parameter.
 
link in email:
file:///C:\Misc\App\App\bin\Release\App.exe?id=52
 
code in executable:
Dim str as String
Dim param as Integer
 
For Each str in Environment.GetCommandLineArgs()
    param = str  
Next
 
I don't think the GetCommandLineAgrs() is correct.
 
Thanks,
ASKER CERTIFIED SOLUTION
Avatar of David Lee
David Lee
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of z018196

ASKER

I took a look at the article but couldn't find what I needed.  I can't get the GetCommandLineAgrs() to work right.  It doesn't get the parameter I pass to it, just the link to the executable.

Any suggestions?
Please show me the link that you're using.
Avatar of z018196

ASKER

file:///C:\Misc\App\bin\Release\App.exe?id=52    
Try this instead

    file:///C:\Misc\App\bin\Release\App.exe%2052

or

    file:///C:\Misc\App\bin\Release\App.exe%20-id%2052

Look back at that article I linked to and check the section titled "Generic Parsing Guidelines".