2016-09-15 23 views
1

ウイルス対策ソフトウェアがインストールされているかどうかを確認し、アンインストールしてバッチファイル経由で置き換える方法はありますか?バッチからウイルス対策ソフトウェアがインストールされているかどうかを自動的に検出

私はそこに疑問がありますが、私はこれに関する情報を見つけることができません。(プログラムがインストールされているかどうかを確認できますが、もっと良い方法があるかどうかは分かりませんでした。

ありがとうございました。

+0

興味があるだけです:あなたはそれを何を使うのでしょうか? 私はこのようにあなたの質問を理解しています:インストールされたソフトウェアがウイルス対策ソフトウェアであり、(基本的に)検索できるという兆候はありますか? すでに述べたことは、インストールされているプログラムの一般的なチェックです。より一般的なウイルス対策ソフトウェアを含むテキスト文書と組み合わせて、ループのあるものを探します。あなたがワットで正確でなければならない方法を選ぶなら、あなたはテキストファイルに配置します。 – geisterfurz007

+0

@ geisterfurz007これは私が答えになることを期待していたものでしたが、もっと簡単な方法があるかどうかは不思議でした。この点は、期限切れのMcAfeeバージョン(プレインストールされた試用版)で多くのマシンが稼働するということです。サービスパックをインストールすると、後で2つのウイルス対策ソフトをインストールしたときに、インストールパック中にエラーが発生することがあります。それはあなたのレジストリに(それは非常に乱雑、ランダムなエラーをどこでも取得します)。 – Cjen1

+0

コンピュータにこの古いMcAfeeがあるかどうかを確認したい場合、最初にアンインストールするか、起動したインストールを中止してから、新しいインストーラを実行しますか?それは可能なはずです(私は方法はわかりませんが、他人がやっていると確信しています)。 – geisterfurz007

答えて

2

を、私はこの思い付いた:

テストされていません!それはREM PLACE HEREを言う

@echo off 
wmic product get name,version | findstr "McAfee">temp1.txt 
set /p line=<temp1.txt 
del temp1.txt 
if "x%line%"=="x" (
    REM string is empty -> file is empty -> prgramm does not exist 
    echo "No old McAfee installed" 
    pause 
    Goto :eof 
) else (
    choice /m "Uninstall old one?" 
    if %errorlevel%==1(
    REM PLACE HERE 
    REM run installer 
) else Goto :eof 

) 
pause 

あなたは(バッチファイルを終了するために、一度だけ)次の操作を行う必要があります:キーに介して自分自身を registyエディタ(regeditと)に移動し、作業

HKEY_LOCAL_MACHINE \ SOFTWARE \ WOW6432NODE \マイクロソフト\ Windowsの\ CurrentVersionの\アンインストール

32ビットソフトウェアの

または

HKEY_LOCAL_MACHINE \ソフトウェア\ 64ビット・ソフトウェアは、Microsoft \ Windowsの\ CurrentVersionの\アンインストール

ここでキーを押して、DisplayNameキーを探します。あなたが正しいものを見つけるまでそれを通して自分自身を働かせてください。次にUninstallStringをご覧ください。 それをコピーし、コメント行の代わりに置きます。

もう一度:これはテストされていないため、経験豊富なユーザーがテストマシンの確認とテストを希望します。

1

がインストールお使いのOSやウイルス対策に関するいくつかの情報を取得するために、このバッチファイルで起動することができます。それを実行するために必要ないくつかの事柄について調査した結果

@echo off 
Title General information about OS and Antivirus by Hackoo 2016 
Mode con cols=50 lines=3 
cls & color 0A & echo. 
::::::::::::::::::::::::::::::::::::::::: 
:: Automatically check & get admin rights 
::::::::::::::::::::::::::::::::::::::::: 
Set "TmpLogFile=%Tmp%\TmpLogkey.txt" 
set "LogFile=%userprofile%\Desktop\%~n0_LogFile.txt" 
If Exist %TmpLogFile% Del %TmpLogFile% 
If Exist %LogFile% Del %LogFile% 
REM --> Check for permissions 
Reg query "HKU\S-1-5-19\Environment" >%TmpLogFile% 2>&1 
REM --> If error flag set, we do not have admin. 
if '%errorlevel%' NEQ '0' (
Echo. 
ECHO      ************************************** 
ECHO       Running Admin shell... Please wait... 
ECHO      ************************************** 

    goto UACPrompt 
) else (goto gotAdmin) 

:UACPrompt 
    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs" 
    set params = %*:"="" 
    echo UAC.ShellExecute "cmd.exe", "/c ""%~s0"" %params%", "", "runas", 1 >> "%temp%\getadmin.vbs" 

    "%temp%\getadmin.vbs" 
    del "%temp%\getadmin.vbs" 
    exit /B 

:gotAdmin 
:::::::::::::::::::::::::::: 
::   START   :: 
:::::::::::::::::::::::::::: 
Echo. 
Echo    Please wait a while ..... 
If Exist "%LogFile%" Del "%LogFile%" 
(
    Echo **************************** General info **************************** 
    Echo Running under: %username% on profile: %userprofile% 
    Echo Computer name: %computername% 
    Echo Operating System: 
    wmic os get caption | findstr /v /r /c:"^$" /c:"^Caption" 
    Echo Boot Mode: 
    wmic COMPUTERSYSTEM GET BootupState | find "boot" 
    Echo Antivirus software installed: 
    wmic /Node:localhost /Namespace:\\root\SecurityCenter2 Path AntiVirusProduct Get displayName | findstr /v /r /c:"^$" /c:"displayName" 
    Echo Executed on: %date% @ %time% 
    Echo **************************** General info **************************** 
)>"%LogFile%" 

Start "" "%LogFile%" 
-2

だから、のような彼らのディレクトリを確認するためにできることがあります:

if exist "C:\Program Files (x86)\Avast" (
echo Avast Is Installed! 
)else echo Avast Not Installed 

私はAvastのはの自体をインストールする場所を知らないが、これは私の最高の推測

関連する問題