Resep ini berfungsi untuk kita, versi panjang jawaban KHibma . Mungkin ada metode yang lebih baik tetapi ini cukup baik bagi kita sekarang - ambil kode produk registri Windows dari HowTo: Hapus instalan produk ArcGIS dan berikan mereka ke msiexec :
msiexec /x %product_code% /qn /passive
Hapus /passive
untuk menjalankan secara diam-diam (tidak ada jendela kemajuan yang muncul).
Saya telah mengumpulkan uninstall-ALL-ArcGIS-products .bat yang menghapus semua produk ArcGIS dari 8.2 hingga 10.3.1. (Daftar 10.3+ tidak lengkap, tetapi lebih lengkap dari artikel Esri KB di atas). Tidak ada kecerdasan untuk itu, tidak ada pengujian untuk melihat apakah ada sesuatu yang benar-benar ada, itu hanya kekuatan kasar yang masuk dalam daftar. Ini hanya berfungsi untuk program yang menggunakan installer msi di tempat pertama, jadi hal-hal seperti ArcPad tidak termasuk.
Pendekatan yang lebih bertarget dan fleksibel adalah dengan memanfaatkan Windows Command Instrumentation Command-line (WMIC) .
Copot satu program bernama:
wmic product where ^
"name = 'ArcGIS 10.1 SP1 for Desktop Background Geoprocessing (64-bit)'" ^
call Uninstall
Hapus instalan apa pun dengan ArcGIS di judul, semuanya dalam sekali jalan (perhatikan sintaks wildcard unik ):
wmic product where ^
"name like '%ArcGIS%'" ^
call Uninstall
Banyak contoh lebih berguna di Cuplikan WMIC , seperti daftar program yang diinstal:
wmic product where "Name like '%ArcGIS%'" ^
get Name, IdentifyingNumber, Version
wmic product where "Vendor like '%Environmental Systems Research Institute%'" ^
get Name, Version, InstallDate, InstallLocation
Saya memilih untuk tidak menggunakan wmic karena kueri membutuhkan waktu yang sangat lama untuk kembali (tergoda untuk berpikir itu tergantung, melihat prompt shell kosong dan tidak berkedip selama puluhan detik. Mungkin mungkin tidak).
Python adalah sedikit binatang yang terpisah. Sebagai contoh jika python diinstal dengan ArcGIS, menghapus ArcGIS juga akan menghapus python, tetapi modul pihak ke-3 yang ditambahkan kata penutup akan ditinggalkan.
Dengan asumsi seseorang ingin menghapus Python 2.6 dan semua materi terkait (blind copy and paste tanpa memahami tidak disarankan) :
Hapus semua file Python untuk versi ini di disk:
rd /s/q C:\Python27
Hapus kunci registri dengan REG :
reg delete HKLM\SOFTWARE\Python\PythonCore\2.7 /f
reg delete HKCU\SOFTWARE\Python\PythonCore\2.7 /f
Jika python tidak dipasang di tempat yang biasa, Anda dapat mengambil lokasi itu reg query HKLM\SOFTWARE\Python /s
dan menontonnyaInstallPath
Langkah terakhir adalah menghapus entri Python 2.7 apa pun dari variabel lingkungan PATH, tapi saya belum menemukan cara mudah (skrip) untuk melakukan ini tanpa menginstal lebih banyak alat. Yang mengatakan, Edit variabel lingkungan PATH di Windows tanpa rasa sakit adalah sumber yang bagus untuk alat tersebut.
Mungkin juga diperlukan assoc
dan ftype
untuk memeriksa dan mungkin memperbaiki asosiasi file:
Asosiasi tampilan:
assoc .py
.py=Python.File
ftype Python.File
Python.File="C:\Python26\python.exe" "%1" %*
Hapus asosiasi:
assoc .py=
ftype Python.File=
(milik @ dash-tom-bang di Stack Overflow, periksa juga .pyc
,. pyw
)