Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   Как проверить наличие .NET Fraemwork. (http://forum.oszone.net/showthread.php?t=278191)

rocet 22-02-2014 15:49 2313671

Как проверить наличие .NET Fraemwork.
 
Iska,извиняюсь за завуалированый вопрос, глупость в том что у net v3.5 папка так и называется а у net 4.0 - v4.0.30319 :lamer: .
Как определить установлен net fraemwork v3.5 SP1, используя autoit? И если его нет, установить с инсталятора рядом dotnet3.5sp1.exe
иначе просто закрыть скрипт.
P.S. И net 4.0 объясните :drug:

Iska 22-02-2014 16:11 2313685

Цитата:

Цитата rocet
криво выразился надеюсь разберёте »

Очень криво. Для начала попробуйте использовать по потребности заглавные буквы и расставить знаки препинания.

Iska 23-02-2014 09:48 2314083

Вообще-то оригинальный файл зовётся иначе.

Код:

AutoItSetOption("MustDeclareVars", 1)

Local $sSubKey_NET_Framework_v35 = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5"
Local $sInstallFileName = "dotnet3.5sp1.exe"

; How to determine which versions and service pack levels of the Microsoft .NET Framework are installed
; http://support.microsoft.com/kb/318785/en-us

If RegRead($sSubKey_NET_Framework_v35, "Install") = 1 And _
        RegRead($sSubKey_NET_Framework_v35, "SP2") = 1 Then

        ; Nothing to do
Else
        If FileExists(@ScriptDir & "\" & $sInstallFileName) Then
                RunWait("""" & @ScriptDir & "\" & $sInstallFileName & """", @ScriptDir)
        Else
                ConsoleWriteError("Can't find [" & $sInstallFileName & "] near the script!" & @CRLF)
        EndIf
EndIf

Exit(0)

Цитата:

Цитата rocet
И net 4.0 объясните »

Ссылка та же: How to determine which versions and service pack levels of the Microsoft .NET Framework are installed.

rocet 24-02-2014 09:24 2314662

Цитата:

Цитата Iska
Local $sInstallFileName = "dotnet3.5sp1.exe" »

а что если инсталятор надо запускать с ключом тогда:
Код:

Local $sInstallFileName = 'dotnet3.5sp1.exe /quiet /norestart'
а visual c ++ как?

Iska 24-02-2014 09:41 2314670

Цитата:

Цитата rocet
а что если инсталятор надо запускать с ключом тогда: »

Разумеется нет. Вот так:
Код:

RunWait("""" & @ScriptDir & "\" & $sInstallFileName & """ /quiet /norestart", @ScriptDir)
Цитата:

Цитата rocet
а visual c ++ как? »

Что «как»?

rocet 24-02-2014 12:09 2314742

Цитата:

Цитата Iska
Что «как»? »

что и .NET - проверить: есть - выключится, нет - установить.

Iska 24-02-2014 14:40 2314818

Что именно проверить? Что именно установить? Посмотрите Википедию: Visual C++ - Wikipedia, the free encyclopedia, посмотрите шапку темы: [addon] Microsoft Visual C++ 05-08-10-12-13 Redistributable Package x86 & x64.

rocet 24-02-2014 15:54 2314872

Цитата:

Цитата Iska
Что именно проверить? »

установлена ли требуемая версия (к примеру visual c ++ 2010 x86)
Цитата:

Цитата Iska
Что именно установить? »

vcredist_x86.exe /q

Iska 24-02-2014 23:14 2315068

Попробуйте так:
Код:

AutoItSetOption("MustDeclareVars", 1)

Local $sSubKey_VCRedist_10_x86 = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0\VC\VCRedist\x86"
Local $sInstallFileName = "vcredist_x86.exe"

; How to detect the presence of the Visual C++ 2010 redistributable package
; http://blogs.msdn.com/b/astebner/archive/2010/05/05/10008146.aspx

If RegRead($sSubKey_VCRedist_10_x86, "Installed") = 1 Then
        ; Nothing to do
Else
        If FileExists(@ScriptDir & "\" & $sInstallFileName) Then
                RunWait("""" & @ScriptDir & "\" & $sInstallFileName & """ /q", @ScriptDir)
        Else
                ConsoleWriteError("Can't find [" & $sInstallFileName & "] near the script!" & @CRLF)
        EndIf
EndIf

Exit(0)


rocet 25-02-2014 10:40 2315261

спасибо!!! :)
а как использовать для определения, установлен или не установлен тотже самый visual c++ 2010, используя ключи продуктов
({FF66E9F6-83E7-3A3E-AF14-8DE9A809A6A4}-x32 версия)???


Время: 20:34.

Время: 20:34.
© OSzone.net 2001-