您可以使用ProcessStartInfo指定要運行的文件(rundll32)和Arguments屬性以指定要使用的參數。它不是一個數組,而是一個字符串。
startInfo.Arguments =「/ x/y/z」;
你不需要cmd.exe,因爲你正在啓動一個將不需要cmd來處理它的rundll32進程。
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.FileName = "rundll32.EXE";
startInfo.Arguments = "Printui.dll,PrintUIEntry /ia /K /q /m "SHARP MX-5500N PS" /h "Windows NT x86" /v 3 /f sn0hwenu.inf";
Process.Start(startInfo);
請注意,您可能需要用引號包裝參數(它看起來像你已經在做)。例如,如果你給一個路徑C:\ Program Files文件...您將需要包裝在引號,否則你會得到錯誤當試圖運行過程
startInfo.Arguments = "\"c:\\Program Files\\...\"";
而且要記住,單獨指定rundll32.exe可能無法正常工作。我不確定process.Start是否使用PATH環境變量來解析文件,因此您可能需要提供rundll32.exe的完整路徑