簡體   English   中英

從ASP.NET應用程序啟動進程時cscript崩潰

[英]cscript crashes when starting a process from ASP.NET Application

我的ASP應用程序有問題。 在服務器上運行進程時,cscript出現錯誤。 當我在本地調試頁面時,它可以正常工作並且正確執行了該過程,但是當我將應用程序部署到IIS並從另一個計算機資源管理器運行它時,該進程啟動時會崩潰。

我想這是用戶的事,所以我將這一行添加到web.config中以確保這一點。

<identity impersonate="true" userName="domain\user" password="password" />

然后,我添加了我希望該過程開始的用戶,但是頁面不斷崩潰。 每次啟動進程(按下按鈕時),我在服務器端遇到的錯誤是:

cscript.exe-應用程序錯誤

應用程序無法正確初始化(0xc0000142)。 單擊確定終止應用程序

啟動該過程的代碼是:

    public static void actualizarPersona(csPersona persona)
    {

        string nombreArchivo = "card.js";

        File.WriteAllText(nombreArchivo, persona.setFileActualizarPersona(persona), Encoding.GetEncoding(1252));


        Process proc = new Process();

        ProcessStartInfo startInfo = new ProcessStartInfo();
        startInfo.CreateNoWindow = true;
        startInfo.UseShellExecute = false;
        startInfo.RedirectStandardOutput = true;
        startInfo.RedirectStandardError = true;
        startInfo.FileName = "cscript.exe";
        startInfo.Arguments = nombreArchivo;
        startInfo.WindowStyle = ProcessWindowStyle.Hidden;
        startInfo.UserName = "Administrator";

        SecureString password = new SecureString();
        string contraseña = "myPassword";
        foreach (char c in contraseña)
        {
            password.AppendChar(c);
        }

        startInfo.Password = password;
        proc.StartInfo = startInfo;
        proc.Start();
        proc.WaitForExit();
        proc.Close();
        proc.Dispose();
    }

有誰知道會發生什么? 我今天在這里停留了一段時間。

謝謝。

您可能需要加載用戶的個人資料

startInfo.LoadUserProfile = true

編輯

嘗試使用一個新的管理員帳戶創建一個新的應用程序池。 如果可行,請從管理組中刪除該用戶,然后創建一個具有該應用程序必要權限的新組。

(請參閱嘗試從asp.net應用程序運行進程

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM