為跨域的 .NET Framework 靜默安裝創建部署應用程序? (Creating a deployment application for .NET Framework silent install across domain?)


問題描述

為跨域的 .NET Framework 靜默安裝創建部署應用程序? (Creating a deployment application for .NET Framework silent install across domain?)

I need to deploy .NET framework 4 to all the domain User computers that run off of a server. I have created a console application that will run automatically from a Login Script that is initated when the users Log on to the domain. 

The current code i have is able to link to the install file that is located on the server and run it automatically. However i am unable to run it in quiet mode i.e. using /q. Everytime the install file runs it asks for the User to prompt the install, i.e. 'Click Next' and 'Install'.

My current code looks like this (I have changed the login details and file path for security reasons. But the file is situated on a server and the login details are the main admin account) ‑

Function ConvertToSecureString(ByVal str As String)
    Dim password As New SecureString
    For Each c As Char In str.ToCharArray
        password.AppendChar(c)
    Next
    Return password
End Function

Sub Main()
    Dim securePass As New Security.SecureString()
    Dim password As SecureString = ConvertToSecureString("password")
    Dim myProcess As New Process()

    myProcess.StartInfo.Arguments = "/q"
    myProcess.Start("C:\dotNetFx40_Full_x86_x64.exe", "user", password, Nothing)
    myProcess.StartInfo.CreateNoWindow = True
End Sub

To my understanding with research, the line: myProcess.StartInfo.Arguments = "/q" is meant to run the install silently in the background without the user prompt. However it does not work.

‑‑‑‑‑

參考解法

方法 1:

Managed to fix it and make a work around. i was just misplacing the line myProcess.StartInfo.Arguments = "/q" Instead i just included this into the Process.Start line and got rid of the Process Object. So now i have:

Process.Start("C:\dotNetFx40_Full_x86_x64.exe", "/passive", "user", password, Nothing)

I have changed the "/q" for "/passive" because it shows a progress bar of completion. 

Thanks for the advice anyway.

Greg

(by Greg StratfordGreg Stratford)

參考文件

  1. Creating a deployment application for .NET Framework silent install across domain? (CC BY‑SA 3.0/4.0)

#.net-4.0 #vb.net #.net






相關問題

SendKeys.Send NullReferenceException (SendKeys.Send NullReferenceException)

訪問 MarkupExtension.ProvideValue 中的構造函數參數 (Access to a constructor parameter within MarkupExtension.ProvideValue)

調試時使用 WorkflowInvoker 發生瘋狂的內存洩漏 (Crazy memory leak with WorkflowInvoker while debugging)

為跨域的 .NET Framework 靜默安裝創建部署應用程序? (Creating a deployment application for .NET Framework silent install across domain?)

Windows 窗體關閉後刪除的窗體數據 (Form data erased after Windows form is closed)

如何從 php wordpress 服務器呈現 aspx 頁面 (How to render an aspx page from a php wordpress server)

嘗試通過方法“System.Web.Helpers.Json.Decode(System.String)”訪問字段“System.Web.Helpers.Json._serializer”失敗 (Attempt by method 'System.Web.Helpers.Json.Decode(System.String)' to access field 'System.Web.Helpers.Json._serializer' failed)

如何使用 Windows 資源管理器顯示項目和詳細信息展開/折疊 (How to Display Items and Details with Windows Explorer Expand/Collapse)

在 C# 中通過反射訪問屬性 (Accessing attribute via reflection in C#)

連續輸入時不要引發 TextChanged (Don't raise TextChanged while continuous typing)

MSMQ 異步異常行為 - .NET 4.0 與 .NET 2.0 (MSMQ asynchronous exception behavior - .NET 4.0 vs .NET 2.0)

多線程 WMI 調用 - 如何最好地處理這個? (Multithreading WMI calls - how best to handle this?)







留言討論