What I mean is, when user click a button on a webpage, a program which has already installed on his computer would be executed. I also need to pass some command line para
This method should probably work if you are running on Windows machine that has IIS.
Set up a Web Service (for example using Windows Communication Foundation) on the local machine that exposes a method that runs local applications.
Call that method from the webpage.
As already said, since SP2, I believe, this is not possible because it is a huge security issue.
However, for our company intranet we had the requirement to create a list of links which started all kinds of applications. I wrote an applet which handles these 'special links' and allows execuables to be started or folders to be opened etc. As this is all under our control we consider the security problem can be ignored.