1 ضمیمه
اجرای بسته نصب msi توسط msiexec (MSI Installer)
سلام
من یک دستور اجرا برای اجرای فایل msi. دارم:
Sub ExecuteInstaller()
Dim Installer As String = IO.Path.GetFullPath(".\StoreManagement Source Code.msi")
If IO.File.Exists(Installer) = False Then
MsgBox("فایل نصب قابل شناسایی نیست!", MsgBoxStyle.Critical)
Exit Sub
End If
Process.Start("msiexec.exe", String.Format("/i {0}", Installer))
End
End Sub
که از اجرای فایل استنکاف می ورزد....
برای نصب هم از option /i استفاده کردم ولی تنها همین پنخره Windows Installer رو نمایش می ده:
ضمیمه 156290
نقل قول: اجرای بسته نصب msi توسط msiexec (MSI Installer)
پیداش کردم
نام فایل نباید طولانی باشه....
Sub ExecuteInstaller()
Dim Installer As String = "Install.msi"
If IO.File.Exists(Installer) = False Then
MsgBox("فایل نصب قابل شناسایی نیست!", MsgBoxStyle.Critical)
Exit Sub
End If
Process.Start("msiexec", String.Format("/a {0}", Installer))
End
End Sub
2 ضمیمه
نقل قول: اجرای بسته نصب msi توسط msiexec (MSI Installer)
سلام و روز خوش
فکر کنم منظور شما از طولانی بودن filename این هست که چند تکه باشه (چند کلمه ای با space بین اونها).
چه اسم برنامه اجرایی،
چه در path،
چه پارامترهای اون،
با این داستان مشکلی ندارن.
برای نشون دادن این مطلب من یک کپی از برنامه rar.exe (نه winrar.exe) رو در یک فولدر بلند ریختم،
و اسم خودش رو هم به Long RarExe With Extra Characters.exe تغییر دادم:
ضمیمه 156291
و یک آرشیو با نام "long archive name.rar" ساختم:
Dim exec_address As String =
"D:\A Long Folder for Question 589917 BarnameNevis_Org\A Long SubFolder\Long RarExe With Extra Characters.exe"
With New Process
With .StartInfo
.FileName = exec_address
.WorkingDirectory = Path.GetDirectoryName(exec_address)
.Arguments = "a ""long archive name.rar"" *.pdf"
.WindowStyle = ProcessWindowStyle.Hidden
End With
.Start()
End With
ضمیمه 156292
نقل قول: اجرای بسته نصب msi توسط msiexec (MSI Installer)
سلام
منظور من اجرای فایل msi. با Windows Installer بود که با نام msiexec.exe به پارامتر اول معرفی شده.
گرچه دیگه نیازی ب این دستور ندارم چرا که من می خواستم فایل های Lock شده رو به اون اضافه کنم که ویندوز این اجازه رو نمی ده....
نقل قول: اجرای بسته نصب msi توسط msiexec (MSI Installer)
سلام دوباره
فرقی نمیکنه - من مثالی گذاشتم که همه حالتها رو در بر بگیره : هم filename هم path هم پارامتر.
شما همون اسم طولانی StoreManagement Source Code.msi رو درون جفت "" بذارین و در processinfo.arguments معرفی کنین
کد اولیه باید کار کنه.