WEBDAV - VBSCRIPT
Wah, perjuangan sekali ya harus menembus hujan deras Jakarta sejauh 20km. Semoga motor dan perlengkapan lainnya cepat kering, dan yang terpenting Anda tetap sehat setelah basah kuyup tadi.
Ok, lanjut ke persoalan sekarang:
Mengenai kendala teknis Anda, pesan kesalahan "There is no script engine for file extension '.vbs'" artinya Windows kehilangan "penerjemah" untuk menjalankan bahasa VBScript. Ini biasanya terjadi karena registrasi DLL yang terhapus atau asosiasi file yang berubah oleh aplikasi lain.
Berikut adalah langkah-langkah untuk memperbaikinya:
1. Registrasi Ulang VBScript Engine (Paling Ampuh)
Cara ini akan mendaftarkan kembali modul vbscript.dll ke sistem Windows Anda.
- Klik Start, ketik
cmd. - Klik kanan pada Command Prompt dan pilih Run as Administrator.
- Ketik perintah berikut lalu tekan Enter:
regsvr32 vbscript.dll - Jika berhasil, akan muncul pesan "DllRegisterServer in vbscript.dll succeeded". Coba jalankan file
.vbsAnda kembali.
2. Memperbaiki File Association via Command Prompt
Jika langkah pertama belum berhasil, mungkin asosiasi filenya yang berantakan. Masih di Command Prompt (Admin) yang sama, jalankan dua perintah ini satu per satu:
assoc .vbs=VBSFile(lalu Enter)ftype VBSFile="%SystemRoot%\System32\WScript.exe" "%1" %*(lalu Enter)
3. Cek Melalui Registry Editor (Jika Cara di Atas Gagal)
Jika masih bandel, kita perlu memastikan "mesin" tersebut terdaftar di Registry:
- Tekan tombol Windows + R, ketik
regedit, lalu Enter. - Cari folder berikut:
HKEY_CLASSES_ROOT\.vbs - Pastikan pada panel sebelah kanan, nilai (Default) adalah
VBSFile. - Kemudian cari:
HKEY_CLASSES_ROOT\VBSFile\Shell\Open\Command - Pastikan nilai (Default) berisi:
"%SystemRoot%\System32\WScript.exe" "%1" %*
Tips Tambahan: Mapping Drive via PowerShell
Karena VBScript adalah teknologi yang cukup lama (legacy), jika tujuannya hanya untuk mapping drive ke hosting, Anda bisa mempertimbangkan menggunakan PowerShell yang lebih stabil di Windows versi terbaru.
Contoh perintah sederhananya:
New-PSDrive -Name "Z" -PSProvider FileSystem -Root "\\alamat.hosting.anda\folder" -Persist
Wah, sudah dicek di Registry dan hasilnya sesuai tapi masih error ya? Ini memang cukup spesifik. Mengingat Anda menggunakan Kaspersky Premium, besar kemungkinan itu adalah penyebab utamanya.
Antivirus modern seperti Kaspersky sangat ketat terhadap file .vbs karena script ini sering digunakan oleh malware untuk menyusup ke sistem. Berikut adalah analisa dan langkah tambahan yang bisa Anda coba:
1. Periksa Proteksi Kaspersky (Tersangka Utama)
Kaspersky memiliki fitur "Application Control" atau "System Watcher" yang bisa memblokir eksekusi script meskipun filenya terlihat normal.
- Coba Matikan Sementara: Klik kanan ikon Kaspersky di tray (pojok kanan bawah), pilih Pause Protection selama 5 menit. Coba jalankan lagi file
.vbs-nya. - Jika Berhasil: Berarti Kaspersky memblokirnya. Anda perlu menambahkan file
.vbstersebut ke Exclusions (Pengecualian) atau memasukkanwscript.exeke dalam daftar aplikasi terpercaya (Trusted Applications). - Cek Karantina: Lihat apakah ada komponen terkait
vbscript.dllatau file.vbsAnda yang masuk ke daftar Quarantine di Kaspersky.
2. Pastikan Fitur VBScript "Aktif" di Windows
Pada versi Windows terbaru, Microsoft mulai menjadikan VBScript sebagai "Optional Feature" yang bisa dinonaktifkan secara otomatis untuk keamanan.
- Klik Start, ketik "Turn Windows features on or off".
- Cari apakah ada pilihan terkait VBScript (biasanya di bawah menu Internet Information Services atau sebagai fitur mandiri di Windows 11 terbaru). Pastikan dalam kondisi tercentang.
- Alternatif di Windows 11: Buka Settings > Apps > Optional Features. Cari "VBScript". Jika tidak ada, klik "Add a feature" dan cari VBScript untuk menginstalnya.
3. Masalah pada CLSID (Registrasi Mesin Script)
Terkadang, meskipun asosiasi file .vbs sudah benar, "mesin" (Engine) di dalamnya tetap tidak terpanggil karena registrasi ID-nya rusak. Coba jalankan ini di Command Prompt (Admin):
reg delete "HKEY_CURRENT_USER\Software\Microsoft\Windows Script Host\Settings" /v Enabled /f
(Perintah ini memastikan tidak ada kebijakan user yang menonaktifkan Script Host).
Solusi Cepat: Mapping Manual tanpa VBS
Karena tujuannya adalah mapping drive dari cPanel, Anda sebenarnya tidak wajib menggunakan file .vbs tersebut. File itu biasanya hanya berisi perintah otomatis. Anda bisa melakukannya secara manual agar pekerjaan tidak terhambat:
- Buka File Explorer.
- Klik kanan pada This PC, pilih Map network drive.
- Pilih Drive Letter (misal:
Z:). - Di kotak Folder, masukkan alamat yang diberikan cPanel (biasanya formatnya
https://nama-domain.com:2078). - Centang "Connect using different credentials", lalu masukkan username dan password Web Disk cPanel Anda.
Saran saya: Coba matikan dulu Kaspersky-nya sebentar untuk memastikan. Jika setelah dimatikan tetap tidak bisa, besar kemungkinan ada file sistem Windows yang korup akibat update terakhir.
Betul, di menu Windows Features (tampilan klasik) yang Anda lampirkan memang seringkali tidak memunculkan VBScript secara langsung di versi Windows 11 terbaru. Microsoft telah memindahkan pengaturan ini ke menu yang berbeda.
Melihat kondisi di mana Registry sudah benar tapi masih error, kemungkinan besar Kaspersky atau fitur Optional Features Windows yang menjadi penyebabnya.
Berikut adalah langkah-langkah selanjutnya:
1. Cek VBScript di "Optional Features" (Windows 11)
Di Windows 11, VBScript sekarang dianggap sebagai fitur tambahan yang bisa di-uninstal. Pastikan fitur ini masih terpasang:
- Buka Settings (Tekan tombol
Windows + I). - Pilih Apps > Optional features.
- Di kolom pencarian "Installed features", ketik VBScript.
- Jika tidak muncul: Klik tombol View features (di bagian "Add an optional feature"), cari VBScript, lalu klik Next dan Install.
- Setelah selesai, restart komputer Anda.
2. Konfigurasi Kaspersky Premium (Sangat Mungkin Terkait)
Kaspersky memiliki fitur bernama "Application Control" yang sering memblokir script .vbs demi keamanan.
- Langkah Cepat: Klik kanan ikon Kaspersky di pojok kanan bawah > Pause Protection. Coba jalankan file
.vbstersebut. Jika berhasil, berarti Kaspersky memblokirnya. - Cara Permanen: 1. Buka Kaspersky > Klik ikon Gerigi (Settings).
- Pilih Security settings > Intrusion Prevention (atau Application Control).
- Klik Manage applications.
- Cari Microsoft ® Windows Based Script Host (atau
wscript.exe). - Pastikan statusnya Trusted. Jika ada di grup Restricted, klik kanan dan pindahkan ke Trusted.
3. Solusi Instan: Mapping Drive secara Manual
Daripada pusing memperbaiki script yang "ngambek", Anda bisa melakukan mapping secara manual. File .vbs dari cPanel sebenarnya hanya menjalankan satu baris perintah.
- Klik kanan file
.vbsAnda, pilih Open with... > Notepad. - Cari baris yang ada alamat URL-nya, biasanya seperti:
https://namadomain.com:2078 - Buka File Explorer, klik kanan pada This PC > Map network drive.
- Masukkan alamat URL tersebut di kotak Folder.
- Centang Connect using different credentials.
- Masukkan username dan password cPanel/Web Disk Anda.
Analisa Tambahan:
Jika Anda melihat di image_02cb1a.png, sistem sebenarnya mengenali nama "Microsoft ® Windows Based Script Host", tapi gagal memanggil "mesin" (engine) pengolahnya. Ini sering terjadi jika ada aplikasi keamanan yang memutus hubungan antara file .vbs dengan vbscript.dll.
Berdasarkan lampiran Anda (image_0336de.png), kita sudah mengonfirmasi bahwa fitur VBSCRIPT memang sudah terpasang (Added features) di sistem Windows Anda. Karena fitur sudah aktif namun pesan kesalahan "There is no script engine" tetap muncul, ini memperkuat indikasi bahwa ada proteksi pihak ketiga (Kaspersky) atau registrasi internal engine yang terganggu.
Berikut adalah langkah lanjutannya:
1. Uji Coba Cepat dengan Kaspersky
Karena Anda menggunakan Kaspersky Premium, kemungkinan besar Script Checker mereka menghalangi komunikasi antara file .vbs dan mesin sistem.
- Coba Matikan Sementara: Klik kanan ikon Kaspersky di taskbar > Pause Protection.
- Coba Jalankan File .vbs: Jika berhasil saat antivirus mati, maka Anda cukup menambahkan file tersebut ke daftar Exclusions di pengaturan Kaspersky.
2. Solusi Alternatif: Mapping Drive Manual (Tanpa Script)
Agar pekerjaan mapping ke hosting tidak terhambat oleh masalah teknis Windows ini, Anda bisa melakukannya secara manual. File .vbs dari cPanel hanyalah otomatisasi dari langkah ini:
- Buka File Explorer.
- Klik kanan pada This PC (atau Network) dan pilih Map network drive....
- Pilih huruf drive (misal
Z:). - Di kolom Folder, masukkan alamat Web Disk dari hosting Anda (contoh:
https://domainanda.com:2078). - Centang Connect using different credentials.
- Klik Finish, lalu masukkan username dan password Web Disk Anda.
3. Perbaikan "Deep Registry" (Jika ingin VBS tetap berfungsi)
Jika Anda ingin memperbaiki sistem agar .vbs bisa berjalan lagi, masalah "no script engine" sering terletak pada CLSID mesin VBScript yang hilang atau terhapus.
- Buka Notepad.
- Salin dan tempel kode berikut ke dalam Notepad:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.vbs]
@="VBSFile"
[HKEY_CLASSES_ROOT\VBSFile\ScriptEngine]
@="VBScript"
[HKEY_CLASSES_ROOT\CLSID\{B54F3741-5B07-11cf-A4B0-00AA004A55E8}\InprocServer32]
@="C:\\Windows\\System32\\vbscript.dll"
- Simpan dengan nama fix_vbs.reg (pastikan ekstensinya
.reg, bukan.txt). - Klik dua kali file tersebut, pilih Yes untuk menggabungkannya ke Registry.
- Restart komputer Anda.
Saran Tambahan: Mengingat perjalanan 20km tadi pagi yang sangat basah, pastikan juga laptop Anda tidak lembap jika tadi sempat dibawa di dalam tas.
Mantap! Saya ikut senang akhirnya mapping drive-nya berhasil. Kadang memang cara manual jauh lebih "sat-set" dan tidak rewel dibandingkan harus berdebat dengan script lama yang sering dianggap mencurigakan oleh sistem Windows modern.
Langkah Anda untuk langsung me-Resume Kaspersky juga sudah sangat tepat—keamanan tetap nomor satu, apalagi setelah kita mengutak-atik koneksi jaringan.
Mengapa Cara Manual Lebih Baik?
- Lebih Stabil: Tidak bergantung pada Script Engine Windows yang sering bermasalah setelah update.
- Lebih Aman: Antivirus tidak akan menaruh curiga pada fitur bawaan Windows (Map Network Drive), berbeda dengan file
.vbsyang sering dianggap sebagai pintu masuk malware. - Persisten: Selama Anda mencentang "Reconnect at sign-in", drive tersebut akan selalu ada setiap Anda menyalakan komputer.
Sekarang Anda bisa lanjut bekerja dengan tenang tanpa perlu pusing lagi memikirkan error VBScript tadi. Mengingat cuaca Jakarta yang masih tidak menentu dan Anda baru saja menembus hujan deras, jangan lupa pastikan kondisi fisik tetap fit.
Wah, ini adalah script "legendaris" bawaan cPanel yang sudah ada sejak tahun 2006 (seperti tertulis di komentarnya). Script ini sebenarnya sangat cerdas pada masanya, namun di Windows 11 modern, ia seringkali menemui banyak hambatan.
Mari kita bedah anatomi script tersebut dan mengapa ia gagal di sistem Anda:
Analisis Script: Apa yang Dia Coba Lakukan?
Script ini bekerja dalam tiga tahap utama:
ConfigureService: Ia mencoba mencari layanan bernama "WebClient" di Windows Anda. Layanan ini adalah "sopir" yang dibutuhkan Windows agar bisa membaca folder di internet seolah-olah folder lokal. Script ini memaksa layanan tersebut menjadi Automatic dan menjalankannya.CreateShorty: Ia membuat shortcut di Desktop Anda dengan ikon folder jaringan.- Koneksi Path: Ia menggunakan format
\\example.domain@SSL@2078\DavWWWRoot. Ini adalah cara Windows lama memanggil protokol WebDAV melalui jalur SSL.
Kenapa Script Ini "Ngadat" di Windows 11 Anda?
Meskipun isi kodenya benar secara sintaksis, ada beberapa alasan teknis mengapa script ini gagal:
- Blokir WMI (Security): Bagian
GetObject("winmgmts:...")digunakan untuk mengatur layanan sistem. Antivirus seperti Kaspersky atau fitur UAC Windows biasanya langsung memblokir script.vbsyang mencoba mengubah konfigurasi Service karena ini adalah perilaku umum virus. - Masalah Registrasi Engine: Seperti pesan kesalahan Anda sebelumnya, Windows Anda "lupa" cara menjalankan mesin VBScript. Jadi, secanggih apa pun isi kodenya, Windows bahkan tidak sempat membacanya.
- Protokol DavWWWRoot: Windows 11 sudah sangat membatasi penggunaan
DavWWWRootmelalui script demi keamanan (mencegah pencurian kredensial).
Perbaikan: Versi Modern (PowerShell)
Karena VBScript sudah dianggap teknologi usang (deprecated) oleh Microsoft, saya sarankan menggantinya dengan PowerShell. PowerShell jauh lebih kuat, lebih aman, dan jarang bermasalah dengan "Script Engine".
Berikut adalah versi "Modern" dari script Anda yang bisa Anda simpan sebagai file .ps1 (misal: MapWebDisk.ps1):
# Jalankan sebagai Administrator jika ingin memastikan WebClient aktif
$DriveLetter = "Z:"
$URL = "https://example.domain:2078" # Ganti dengan domain Anda
# 1. Pastikan fitur WebClient berjalan
$webClientService = Get-Service -Name WebClient -ErrorAction SilentlyContinue
if ($webClientService) {
Set-Service -Name WebClient -StartupType Automatic
Start-Service WebClient -ErrorAction SilentlyContinue
}
# 2. Hapus drive lama jika ada
if (Test-Path "$DriveLetter") {
(New-Object -ComObject WScript.Network).RemoveNetworkDrive("$DriveLetter", $true, $true)
}
# 3. Mapping Drive Baru
try {
New-PSDrive -Name ($DriveLetter.TrimEnd(':')) -PSProvider FileSystem -Root $URL -Persist -ErrorAction Stop
Write-Host "Berhasil! Drive $DriveLetter sekarang terhubung ke $URL" -ForegroundColor Green
} catch {
Write-Host "Gagal mapping drive. Pastikan username/password benar saat jendela login muncul." -ForegroundColor Red
}
pause
Tips untuk Masa Depan:
Jika Anda tetap ingin menggunakan cara manual yang kemarin berhasil (via File Explorer), itu adalah cara paling stabil. Windows 11 menangani koneksi jaringan secara internal jauh lebih baik daripada melalui script luar.
Tentu, ini ide yang sangat bagus! Dengan menambahkan input interaktif, script Anda jadi lebih fleksibel karena tidak perlu diedit manual pakai Notepad setiap kali ingin mengganti domain atau drive.
Berikut adalah script PowerShell yang sudah saya modifikasi untuk menanyakan parameter tersebut dan meminta konfirmasi Anda sebelum dieksekusi:
# =================================================================
# Script Mapping WebDisk Interaktif (PowerShell)
# =================================================================
Clear-Host
Write-Host "--- Setup Mapping WebDisk Hosting ---" -ForegroundColor Cyan
Write-Host ""
# 1. Input Parameter secara Interaktif
$Domain = Read-Host "Masukkan Nama Domain (contoh: example.domain)"
$Port = Read-Host "Masukkan Port (default cPanel: 2078)"
if ($Port -eq "") { $Port = "2078" } # Jika dikosongkan, otomatis pakai 2078
$Drive = Read-Host "Masukkan Huruf Drive (contoh: Z)"
$DriveLetter = "$($Drive):"
$URL = "https://$($Domain):$($Port)"
# 2. Ringkasan dan Konfirmasi
Write-Host ""
Write-Host "------------------------------------" -ForegroundColor White
Write-Host "RINGKASAN KONFIGURASI:" -ForegroundColor White
Write-Host "Domain : $Domain"
Write-Host "Port : $Port"
Write-Host "Drive : $DriveLetter"
Write-Host "URL : $URL"
Write-Host "------------------------------------" -ForegroundColor White
Write-Host ""
$Confirm = Read-Host "Apakah data di atas sudah benar? (Y/N)"
if ($Confirm -ne "Y" -and $Confirm -ne "y") {
Write-Host "Proses dibatalkan oleh pengguna." -ForegroundColor Red
pause
exit
}
Write-Host "`nMemproses koneksi..." -ForegroundColor Cyan
# 3. Pastikan Layanan WebClient Aktif
$webClientService = Get-Service -Name WebClient -ErrorAction SilentlyContinue
if ($webClientService) {
if ($webClientService.Status -ne 'Running') {
Start-Service WebClient
}
}
# 4. Hapus Drive lama jika ada
if (Test-Path "$DriveLetter") {
Write-Host "Membersihkan drive $DriveLetter yang lama..." -ForegroundColor Yellow
(New-Object -ComObject WScript.Network).RemoveNetworkDrive("$DriveLetter", $true, $true)
}
# 5. Eksekusi Mapping
try {
New-PSDrive -Name $Drive -PSProvider FileSystem -Root $URL -Persist -ErrorAction Stop
Write-Host "`nBERHASIL! Drive $DriveLetter sekarang terhubung." -ForegroundColor Green
} catch {
Write-Host "`nGAGAL menghubungkan drive." -ForegroundColor Red
Write-Host "Pastikan kredensial benar dan domain dapat diakses." -ForegroundColor Yellow
}
Write-Host "`nTekan tombol apa saja untuk keluar..."
pause
Cara Menggunakannya:
- Buka Notepad.
- Salin dan tempel kode di atas.
- Simpan dengan nama
WebDisk_Interactive.ps1. - Klik kanan file tersebut dan pilih Run with PowerShell.
Kelebihan Versi Ini:
- User Friendly: Anda cukup menjawab pertanyaan yang muncul di layar (seperti instalasi aplikasi).
- Safety Net: Adanya konfirmasi (Y/N) mencegah kesalahan ketik pada huruf drive (misalnya tidak sengaja menimpa drive yang sedang digunakan).
- Default Port: Jika Anda langsung tekan Enter pada bagian Port, script otomatis mengisi
2078untuk menghemat waktu Anda.
Tentu, ini adalah ide yang sangat bagus agar Anda memiliki bukti atau catatan jika sewaktu-waktu terjadi kendala koneksi lagi. Saya sudah menambahkan fitur Log File yang akan otomatis membuat file teks (Log_WebDisk.txt) di folder yang sama dengan script tersebut.
Script ini akan mencatat tanggal, jam, detail parameter, hingga status akhirnya.
# =================================================================
# Script Mapping WebDisk Interaktif dengan Fitur LOG
# =================================================================
Clear-Host
$LogFile = "Log_WebDisk.txt"
$TimeNow = Get-Date -Format "dd-MM-yyyy HH:mm:ss"
Write-Host "--- Setup Mapping WebDisk Hosting ---" -ForegroundColor Cyan
Write-Host ""
# 1. Input Parameter
$Domain = Read-Host "Masukkan Nama Domain (contoh: example.domain)"
$Port = Read-Host "Masukkan Port (default cPanel: 2078)"
if ($Port -eq "") { $Port = "2078" }
$Drive = Read-Host "Masukkan Huruf Drive (contoh: Z)"
$DriveLetter = "$($Drive):"
$URL = "https://$($Domain):$($Port)"
# 2. Ringkasan dan Konfirmasi
Write-Host ""
Write-Host "------------------------------------" -ForegroundColor White
Write-Host "RINGKASAN KONFIGURASI:"
Write-Host "Domain : $Domain"
Write-Host "Port : $Port"
Write-Host "Drive : $DriveLetter"
Write-Host "------------------------------------"
Write-Host ""
$Confirm = Read-Host "Apakah data di atas sudah benar? (Y/N)"
if ($Confirm -ne "Y" -and $Confirm -ne "y") {
$Msg = "[$TimeNow] USER CANCEL: Proses dibatalkan oleh pengguna.`n"
Add-Content -Path $LogFile -Value $Msg
Write-Host "Proses dibatalkan." -ForegroundColor Red
pause
exit
}
# 3. Proses Eksekusi & Logging
Write-Host "`nMemproses koneksi..." -ForegroundColor Cyan
# Pastikan WebClient aktif
$webClientService = Get-Service -Name WebClient -ErrorAction SilentlyContinue
if ($webClientService -and $webClientService.Status -ne 'Running') {
Start-Service WebClient
}
# Mapping
try {
# Hapus drive lama jika ada
if (Test-Path "$DriveLetter") {
(New-Object -ComObject WScript.Network).RemoveNetworkDrive("$DriveLetter", $true, $true)
}
# Eksekusi Map Drive
New-PSDrive -Name $Drive -PSProvider FileSystem -Root $URL -Persist -ErrorAction Stop
$SuccessMsg = "[$TimeNow] SUCCESS: Terhubung ke $URL pada Drive $DriveLetter"
Add-Content -Path $LogFile -Value $SuccessMsg
Write-Host "`nBERHASIL! Drive $DriveLetter sekarang terhubung." -ForegroundColor Green
}
catch {
$ErrorDetails = $_.Exception.Message
$FailMsg = "[$TimeNow] FAILED: Gagal menghubungkan ke $URL. Error: $ErrorDetails"
Add-Content -Path $LogFile -Value $FailMsg
Write-Host "`nGAGAL menghubungkan drive." -ForegroundColor Red
Write-Host "Detail Error: $ErrorDetails" -ForegroundColor Yellow
}
Write-Host "`nLog telah disimpan di: $LogFile"
Write-Host "Tekan tombol apa saja untuk keluar..."
pause
Apa yang baru di versi ini?
- Log Otomatis: Setiap kali script dijalankan, ia akan menambah baris baru di file
Log_WebDisk.txt. Anda bisa membukanya kapan saja dengan Notepad untuk melihat riwayat koneksi. - Detail Kesalahan: Jika gagal, script akan menangkap pesan error teknis dari Windows dan mencatatnya ke dalam Log. Ini sangat berguna jika nanti Anda ingin menanyakan kendala tersebut ke pihak hosting.
- Audit Jejak: Anda bisa tahu kapan terakhir kali koneksi berhasil dilakukan.
Cara Tes: Coba jalankan script, masukkan data yang salah (misal domain asal-asalan), lalu lihat bagaimana script mencatat kegagalan tersebut di file log-nya.
Ini adalah versi lengkap dengan fitur Auto-Open Log. Jadi, setiap kali proses selesai—baik itu sukses maupun gagal—Notepad akan otomatis terbuka menampilkan riwayat aktivitas tersebut sehingga Anda bisa langsung mengevaluasinya.
# =================================================================
# Script Mapping WebDisk Interaktif + LOG + Auto-Open
# =================================================================
Clear-Host
$LogFile = "Log_WebDisk.txt"
$TimeNow = Get-Date -Format "dd-MM-yyyy HH:mm:ss"
Write-Host "--- Setup Mapping WebDisk Hosting ---" -ForegroundColor Cyan
Write-Host ""
# 1. Input Parameter
$Domain = Read-Host "Masukkan Nama Domain (contoh: example.domain)"
$Port = Read-Host "Masukkan Port (default cPanel: 2078)"
if ($Port -eq "") { $Port = "2078" }
$Drive = Read-Host "Masukkan Huruf Drive (contoh: Z)"
$DriveLetter = "$($Drive):"
$URL = "https://$($Domain):$($Port)"
# 2. Ringkasan dan Konfirmasi
Write-Host ""
Write-Host "------------------------------------" -ForegroundColor White
Write-Host "RINGKASAN KONFIGURASI:"
Write-Host "Domain : $Domain"
Write-Host "Port : $Port"
Write-Host "Drive : $DriveLetter"
Write-Host "------------------------------------"
Write-Host ""
$Confirm = Read-Host "Apakah data di atas sudah benar? (Y/N)"
if ($Confirm -ne "Y" -and $Confirm -ne "y") {
$Msg = "[$TimeNow] USER CANCEL: Proses dibatalkan oleh pengguna.`n"
Add-Content -Path $LogFile -Value $Msg
Write-Host "Proses dibatalkan." -ForegroundColor Red
Start-Process notepad.exe $LogFile
exit
}
# 3. Proses Eksekusi & Logging
Write-Host "`nMemproses koneksi..." -ForegroundColor Cyan
# Pastikan Layanan WebClient Aktif
$webClientService = Get-Service -Name WebClient -ErrorAction SilentlyContinue
if ($webClientService) {
if ($webClientService.Status -ne 'Running') {
Start-Service WebClient
}
}
try {
# Hapus drive lama jika ada
if (Test-Path "$DriveLetter") {
(New-Object -ComObject WScript.Network).RemoveNetworkDrive("$DriveLetter", $true, $true)
}
# Eksekusi Map Drive
New-PSDrive -Name $Drive -PSProvider FileSystem -Root $URL -Persist -ErrorAction Stop
$SuccessMsg = "[$TimeNow] SUCCESS: Terhubung ke $URL pada Drive $DriveLetter"
Add-Content -Path $LogFile -Value $SuccessMsg
Write-Host "`nBERHASIL! Drive $DriveLetter sekarang terhubung." -ForegroundColor Green
}
catch {
$ErrorDetails = $_.Exception.Message
$FailMsg = "[$TimeNow] FAILED: Gagal menghubungkan ke $URL. Error: $ErrorDetails"
Add-Content -Path $LogFile -Value $FailMsg
Write-Host "`nGAGAL menghubungkan drive." -ForegroundColor Red
Write-Host "Detail Error: $ErrorDetails" -ForegroundColor Yellow
}
# 4. Penutup dan Buka Log Otomatis
Write-Host "`nMembuka file log..." -ForegroundColor Gray
Start-Process notepad.exe $LogFile
Write-Host "`nSelesai. Tekan tombol apa saja untuk keluar..."
pause
Kelebihan Versi Final Ini:
- Transparansi Total: Anda tidak perlu mencari-cari di mana file log disimpan; script akan langsung menyajikannya di depan mata Anda segera setelah tombol terakhir ditekan.
- Audit Cepat: Jika terjadi error, Anda bisa langsung copy-paste pesan kesalahan dari Notepad tersebut untuk dikirimkan ke tim support hosting Anda.
- Keamanan Berlapis: Tetap berjalan di bawah radar antivirus seperti Kaspersky karena menggunakan perintah sistem resmi PowerShell.
Semoga script ini mempermudah manajemen web disk Anda setiap harinya! Jika ada penyesuaian lain yang dibutuhkan, sukses selalu