2011-03-06 65 views
1

當用戶點擊某個鏈接時,我的網站運行一個本地.exe文件(生成一些數據)。網站運行可執行程序

我想知道怎麼做了以下

  • 什麼命令用來運行.exe?
  • 我應該在哪裏存儲.exe並仍然保持安全?

我使用.NET 4的C#

+0

.exe文件有什麼作用? – CarneyCode 2011-03-06 08:22:46

+0

它生成一些其他文本文件。 – Jason 2011-03-06 08:25:08

+0

你有什麼安全限制?你在跑什麼樣的環境?任何有關安全的建議都必須基於這些信息纔有意義。 – Oded 2011-03-06 08:50:44

回答

1

下面是我在我的應用程序一個使用的東西:

var p = new Process(); 
p.StartInfo.UseShellExecute = false; 
p.StartInfo.RedirectStandardOutput = true; 
p.StartInfo.RedirectStandardError = true; 
p.StartInfo.FileName = HttpContext.Current.Server.MapFfmpegPath(); 
p.StartInfo.Arguments = "arguments go here :)"; 
p.Start(); 
p.WaitForExit(); 

至於可執行文件本身,我在我的項目中創建了一個目錄,並將該exe文件放在該目錄中。 MapFfmpegPath方法看起來像這樣。

public static string MapFfmpegPath(this HttpServerUtility server) 
{ 
    return "\"" + server.MapPath("/CoolPathHere/ffmpeg.exe") + "\""; 
} 
2

不知道這工作在MVC,但給它一個鏡頭:

// Process class resides in System.Diagnostics namespace 
Process myProcess = Process.Start("..."); 
myProcess.WaitForExit(); 
// todo : process your data 
+0

我應該如何引用.exe?我應該在哪裏放? – Jason 2011-03-06 08:25:26

+0

需要此部分幫助。的Process.Start( 「...」); – Jason 2011-03-06 08:55:55

+0

'Server.MatPath()'應該這樣做。它在'ASP.NET'中工作,對'MVC'不確定。 – decyclone 2011-03-06 09:53:26