Okay, first of all, if you are going to pass both kpname from the first page to the second, then why do you need to make a database query, at all, in the second page?
However, currently, your first page is *NOT* passing KPName, *AT ALL*, and so of course when you do
kpname = ChkString(Request.QueryString("kpname"))
you are simply getting a blank string into kpname. So of course the call to the executable doesn't work.
Now... You *COULD* get kpname from the SQL Query you do on the second page, but you aren't doing that in the code you show.
So you need to make up your mind: (a) ARE you going to pass KPName in the query string? (b) If so, why do you need the SQL query in the second page, at all?