Kamis, 30 Juni 2022

Shim DataBase (SDB), Patching Official Dari Microsoft

Tampilan Awal Aplikasi Compatibility Administrator
Tampilan Awal Aplikasi Compatibility Administrator
Pernahkah anda bertemu berkas dengan extension (berakhiran) *.sdb di PC anda? Bila pernah menemukannya, biasanya berkas sdb ini digunakan untuk menambal (patch) suatu program, baik berupa aplikasi maupun permainan. Jujur saja, penulis baru bertemu dengan berkas sdb ini ketika mengumpulkan permainan yang mendukung percepatan grafis 3D Glide (3D graphic API developed by 3dfx interactive) di PC yang pernah penulis buat ulang disini.

Penulis bertemu berkas sdb ini tepatnya ketika mengunduh permainan FIFA 98: Road to World Cup, dimana permainan ini tidak bisa berjalan disistem operasi besutan Microsoft, yaitu Windows XP maupun Windows 10 versi 64-bit-nya. Ketika bertemu berkas ini, penulis penasaran bagaimana cara membuat patch berbentuk berkas sdb dan tinggal dipasang maupun dilepas ke/dari dalam sistem menggunakan program sdbinst yang notabene sudah tersedia didalam sistem operasi mulai dari Windows 2000.

Pertama-tama, apakah berkas SDB itu? SDB memiliki kepanjangan Shim DataBase, yang merupakan bagian dari Application Compatibility for Windows Desktop Development yang dikembangkan oleh Microsoft. Nama tepat aplikasinya adalah Compatibility Administrator.

Kedua, bagaimana cara membuat SDB ini? Inilah jugalah yang membuat penulis penasaran, ternyata cara membuat berkas SDB ini sangatlah mudah, yaitu menggunakan aplikasi bernama Application Compatibility Toolkit (ACT) besutan dari Microsoft. Penulis berikan contoh langkah  ketika membuat patch untuk permainan FIFA Football 2002 menggunakan aplikasi ACT ini.

Tampilan Ketika Membuat Perbaikan Baru
Tampilan Ketika Membuat Perbaikan Baru

Untuk membuat perbaikan baru, ikuti langkah sebagai berikut:

1. Dijendela sebelah kiri, klik kanan New Database(1) [Untitled_1] dibawah Custom Database. Terus pilih menu Create New -> Application Fix. Atau cukup tekan tombol Ctrl+P.
2. Masukkan nama program, perusahaan pembuat program dan lokasi berkas executable (*.exe) dari program tersebut, kemudian tekan tombol Next.

Tampilan Modus Kompatibilitas
Tampilan Modus Kompatibilitas
3. Bila anda memerlukan adanya modus kompatibilitas (seperti program hanya bisa berjalan disatu versi Windows atau hanya bisa disatu resolusi layar saja), silahkan dicentang. Bila tidak diperlukan modus kompatibilitas, langsung tekan tombol Next.

Tampilan Perbaikan Kompatibilitas
Tampilan Perbaikan Kompatibilitas
4. Disinilah pikiran anda "bermain", yaitu anda harus menebak kira-kira hal apa saja yang membuat program tersebut tidak dapat dijalankan atau mudahnya adalah pesan kesalahan apa yang dimunculkan oleh program sehingga program tersebut tidak dapat dijalankan, maka anda dapat mencari penyebab kesalahan tersebut disini. Sebagai contoh, permainan FIFA Football 2002 ini, perbaikan yang harus diaktifkan adalah EmulateFindHandles dimana alur program didalam permainan ini mencari berkas dan setelah ketemu lupa pencarian tadi tidak dihentikan, sehingga menyebabkan kesalahan program tersebut. Tetapi kesalahan tidak hanya ada satu saja, melainkan ada banyak. Maka pilihlah yang terkait dengan kesalahan program tersebut.

Tampilan Informasi Kecocokan
Tampilan Informasi Kecocokan
5. Disinilah anda masukkan berkas *.exe*.dll maupun lainnya yang sekiranya ada keterkaitan ketika program tersebut dijalankan. Silahkan dicentang pada attribute berkas apabila SBD yang ada buat agar lebih khusus. Semisal, anda centang ukuran berkas fifa2002.exe, maka SBD ini hanya akan berjalan apabila ada berkas fifa2002.exe dengan ukuran 3.151.430, apabila ada berkas yang sama tapi ukurannya berbeda maka SBD tidak akan dijalankan.

Tampilan Ringkasan Perbaikan Baru Dibuat
Tampilan Ringkasan Perbaikan Baru Dibuat
6. Setelah semua perbaikan yang anda inginkan selesai dibuat, maka akan ada tampilan ringkasannya. Untuk menyimpan SBD ini, tekan tombol Save atau cukup tekan tombol Ctrl+S.

Tampilan Menyimpan SDB
Tampilan Menyimpan SDB
7. Beri nama database anda, selanjutnya simpan nama SBD sesuai keinginan anda.

*CATATAN: Apabila anda masih mau menambah perbaikan lain dalam berkas SDB ini, dijendela sebelah kanan cukup klik kanan pada berkas fifa2002.exe yang berada diatas Compatibility Fixes.

Ketiga, bagaimana cara memasang maupun melepas SDB ini?
- Untuk memasang SDB ini, cukup jalankan perintah dari command prompt sebagai berikut: sdbinst -q [nama_berkas].sdb. Contoh: sdbinst -q fifa2002.sdb
- Untuk melepas SDB ini, cukup jalankan perintah dari command prompt sebagai berikut: sdbinst -u -q [nama_berkas].sdb. Contoh: sdbinst -u -q fifa2002.sdb

Keempat, apa kegunaan berkas SBD? Pada dasarnya, sistem operasi besutan Microsoft mulai dari Windows 2000 keatas memiliki sebuah pangkalan data (database) berisi tentang informasi yang akan dimuat ketika suatu program dijalankan. Informasi ini berisi tentang kompatibilitas alias sistem operasi "berpura-pura" cocok dengan "keinginan" dari program yang dijalankan, sehingga program tersebut dapat berjalan dengan mulus dan lancar jaya. SDB ini dapat digunakan untuk memberikan kompatibilitas suatu program agar dapat berjalan disistem operasi yang bahkan versi sistem operasi tersebut tidak didukung oleh program tersebut (kecuali aplikasi 64-bit tidak akan bisa dijalankan disistem operasi 32-bit meskipun sudah diberikan SDB). Pihak Microsoft pun menggunakan SDB ini untuk membuat patch agar produk aplikasi mereka dapat berjalan dengan lancar disistem operasi terbaru mereka. Bahkan bila anda terlalu kreatif, anda bisa menyebarkan trojanmalware maupun backdoor dengan cara menyuntikkan (inject) suatu program menggunakan SDB ini.

Seperti biasa, penulis akan memberikan tautan untuk mengunduh aplikasi Application Compatibility for Windows Desktop Development disini. Gunakan aplikasi ini untuk membawa bermanfaat bagi umat manusia, jangan membuat petaka bagi umat manusia hehehe...

Semoga tulisan singkat mengenai Shim DataBase sesuai pengetahuan pribadi penulis ini dapat bermanfaat dan berguna bagi anda sekalian apabila mau membuat patch program menggunakan SDB.. Selamat mencoba...

Tidak ada komentar:

Posting Komentar