Apakah ada cara saya dapat menghapus program tanpa antarmuka grafis dan melakukannya melalui CMD?
Apakah ada cara saya dapat menghapus program tanpa antarmuka grafis dan melakukannya melalui CMD?
Setiap program yang menginstal dengan benar sesuai dengan pedoman Microsoft membuat entri registri HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall
. Biasanya, kunci untuk program adalah GUID-nya, atau nama program. Di dalam kunci itu akan ada entri yang disebut UninstallString
. Ini berisi perintah untuk menjalankan untuk menghapus instalasi program.
Jika sebelumnya Anda sudah tahu apa yang akan dihapus instalasinya, cukup mudah untuk memasukkannya ke file batch Anda. Akan menjadi rumit ketika Anda mencoba untuk mengotomatiskan proses itu. Anda dapat menggunakan reg
perintah untuk mendapatkan data dari registri, tetapi mengembalikan banyak teks di sekitar nilai aktual dari kunci yang diberikan, sehingga sulit untuk digunakan. Anda mungkin ingin bereksperimen dengan menggunakan VBscript atau PowerShell, karena mereka memiliki opsi yang lebih baik untuk memasukkan data dari registri ke dalam variabel.
Anda dapat meminta uninstaller yang benar tanpa mengetahui GUID, dll. Dengan menggunakan WMIC.
Untuk melihat daftar nama-nama program yang dikenal secara internal oleh Windows:
wmic product get name
Cari nama produk Anda. Mungkin cocok dengan yang tercantum di panel kontrol "Program dan Fitur" , tetapi tidak selalu.
Maka Anda bisa menggunakannya
wmic product where name="_my_product_name" call uninstall
untuk melakukan uninstall, yang AFAIK harusnya diam (sudah ada dalam pengalaman saya, tetapi coba sebelum Anda bertaruh pada farm itu. Diam mungkin tergantung pada bagaimana installer / uninstaller Anda dibangun).
Lihat di sini untuk lebih lanjut:
Ada juga dokumentasi referensi untuk WMIC di microsoft.com.
/node:"<ComputerName>"
ex:wmic /node:"someuser-pc" product get name
. Pastikan bahwa Anda menggunakan "" di sekitar nama atau Anda akan mengalami kesalahan "Tidak Global Switch". Juga pastikan Anda menjalankan ini dari prompt CMD dan bukan prompt PowerShell karena solusi "" untuk kesalahan "Invalid Global Switch" tidak berfungsi dalam prompt PowerShell.Jika Anda memasang PowerShell 3 (atau lebih tinggi), Anda dapat mengeluarkan panggilan WMI untuk membuat semua program menamakan sesuatu (atau 'menyukai' hal tertentu, untuk melakukan pencarian wildcard), dan kemudian memanggil
Uninstall
metode untuk masing-masingnya:(Get-WmiObject -Query "SELECT * FROM Win32_Product WHERE Name like '%Partial Name%'").uninstall()
sumber
Jika Anda tahu di mana file penginstal MSI, Anda dapat menggunakan:
sumber
Jika suatu program menggunakan Pemasang Windows, Anda dapat menggunakan salah satu dari perintah berikut:
Namun, Anda mungkin tidak memiliki kode produk atau file MSI asli yang digunakan untuk instalasi.
Selain itu, tidak ada perintah uninstall generik, karena installer yang tidak menggunakan Windows Installer "tidak dikenal" oleh sistem operasi. Mereka mungkin menyediakan executable uninstall mereka sendiri, tetapi apakah executable itu termasuk cara untuk menjalankannya tanpa GUI tergantung pada paket perangkat lunak individu.
sumber
Skrip VBScript akan membantu Anda menghapus instalasi program yang diperlukan.
Untuk menggunakan skrip ini, Anda akan memerlukan nama perangkat lunak yang terletak di registri Anda.
Cukup masukkan nama aplikasi dalam skrip dan jalankan dengan hak admin; itu akan menghapus aplikasi. Tetapi ini hanya akan berfungsi untuk aplikasi berbasis jendela; untuk penyiapan mandiri atau aplikasi yang tidak membuat entri dalam rangkaian pencopotan registri, skrip tidak akan berfungsi.
Jadi dalam hal ini Anda harus menemukan cara lain untuk menghapus instalasi aplikasi.
Kode:
sumber
Lihat ini, ini menggunakan batch menemukan kunci registri UninstallString perangkat lunak dan kemudian uninstall perangkat lunak diam-diam yang jauh lebih dapat diandalkan dibandingkan dengan wmic yang saya temukan. https://community.spiceworks.com/topic/2143980-deploy-or-upgrade-java-8-via-shutdown-script-remove-old-javas
sumber
Jawaban yang benar ada di atas, tetapi untuk instalasi Windows X64 Anda juga perlu memeriksa:
sumber