Friday, May 08, 2015

Cara Downgrade dan Aktivasi Lisensi Windows 8 Pro dengan Preinstalled Windows 7 Pro 64bit menjadi Windows 7 Pro 32bit

Komputer built-up baru yang sekarang banyak beredar untuk target pasar business kebanyakan menggunakan lisensi Windows 8 Pro OEM yang kadang-kadang sudah preinstalled Windows 7 Professional 64 bit. Dan kadang juga sudah disertakan OS Recovery DVD Windows 8 Pro dan Windows 7 Pro 64 bit beserta DVD Drivernya. Sehingga bisa digunakan jika ingin menginstall ulang kembali Windows dengan kedua versi Windows tersebut.

Masalah muncul ketika di tempat kerja kita masih menggunakan aplikasi 16bit atau aplikasi berbasis DOS karena dua jenis program tersebut sudah tidak disupport oleh Windows 7 Pro 64bit, apalagi Windows 8 Pro 64bit. Seperti pengalaman saya pribadi sebagai teknisi IT di perusahaan yang masih menggunakan program tersebut. Sehingga opsi yang paling aman menurut saya adalah mengganti OSnya menjadi Windows 7 Pro 32bit meskipun ada alternatif lain yaitu menggunakan virtual mesin seperti Virtual PC, Virtual Box atau sejenisnya. Karena di perusahaan tempat saya bekerja berkomitmen untuk menggunakan software legal, daripada beli lisensi windows tambahan untuk virtual mesin, satu-satunya cara yang paling “aman” adalah menginstall ulang OSnya dengan syarat, sudah tersedia driver untuk perangkat-perangkat komputer tersebut (bisa dilihat di website resminya).

Stiker COA Windows 8 Pro sudah tidak seperti Windows sebelumnya. Pada stiker tidak dicantumkan Product Keynya karena Product Keynya tersimpan di BIOS. Dengan menggunakan tool tertentu (bisa disearching di Google), bisa kita dapatkan Product Key tersebut dari BIOS. Tapi tenang, bukan itu yang jadi masalah, cuma info saja.

Kalau kita berfikir normal sederhana, akan jadi masalah ketika downgrade Windows 7 Professional 64 bit menjadi Windows 7 Professional 32 bit adalah kita butuh DVD OS Recovery Windows 7 Pro 32bit yang notabene tidak disertakan pada pembelian komputer baru tersebut atau bisa menggunakan installer Windows 7 Pro 32 bit yang umum tapi kita tidak punya Product Key windows tersebut untuk aktivasi.

Untuk mengatasi masalah tersebut, banyak alternatif cara yang disarankan oleh netizen di berbagai forum menggunakan tool tertentu atau cara tertentu. Bagi saya, sekali lagi saya akan memilih cara yang paling “aman” dari berbagai solusi yang ditawarkan tersebut.

Langkah pertama adalah mencoba memahami preinstalled Windows 7 64 bit yang sekarang terinstall di komputer tersebut yaitu sebagai berikut:
1. Preinstalled Windows 7 64bit biasanya sama hasilnya jika kita melakukan installasi Windows menggunakan CD/DVD OS Recovery Windows 7 64 bit yang sudah disediakan pada saat pembelian komputer tersebut.
2. Install Windows 7 Pro 64bit menggunakan OS DVD Recovery biasanya tidak membutuhkan Product Key dan OSnya sudah teraktivasi.
3. Ada beberapa perbedaan pada hasil installasi Windows 64 bit menggunakan OS DVD Recovery dengan hasil installasi menggunakan installer umum, salah satunya adalah folder OEM yang ada di C:\Windows\System32\ yang tidak kita jumpai jika install OS menggunakan installer umum. Di dalam folder ini berisi file lisensi windows OEM yang digunakan.

Langkah kedua adalah backup file atau folder dan registry untuk kepentingan aktivasi windows dan mengubah tampilan windowsnya mirip dengan yang sekarang terinstall. Berikut adalah daftar yang harus dibcakup untuk jaga-jaga: (contoh yang saya gunakan adalah komputer HP Prodesk 490 G2)
- %SystemRoot%\system32\oobe\INFO (folder ini berfungsi untuk merubah background awal windows startup defaultnya HP)
- %SystemRoot%\system32\OEM (folder beratribut hidden ini berisi file lisensi yang kita butuhkan. Dalam kasus saya, nama filenya oem-cert.xrm-ms)
- C:\SYSTEM.SAV (folder ini ber-atribut system dan hidden, sehingga harus disetting dulu explorernya agar bisa melihat folder atau file yang ber-atribut hidden dan system. Folder ini berisi logo merk komputer, dalam kasus saya merk HP).
- C:\Users\NamaUser\AppData\Local\Microsoft\Windows\Themes\oem.theme (ini adalah file theme HP defaultnya komputer HP).
- %SystemRoot%\web\wallpaper\HP1.jpg (ini adalah file image yang digunakan untuk wallpaper sesuai dengan settingan yang ada pada oem.theme)
- Export registry key berikut melalui regedit: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation] (registry ini menyimpan informasi OEM komputer tersebut)

Kalau sudah dibackup, kita siap dengan langkah berikutnya.

Langkah Ketiga, download dan jalankan tool ABR (Activation Backup and Restore) dari http://directedge.us/content/abr-activation-backup-and-restore. Tool ini bisa digunakan untuk membackup aktivasi windows, tapi saya menggunakannya cuma untuk mengetahui product key yang digunakan oleh Preinstalled Windows 7 Pro 64 bit yang nantinya saya gunakan kembali untuk aktivasi Windows 7 Pro 32 bit.

Langkah Keempat, install Windows 7 Professional 32 bit menggunakan installer Windows 7 Professional OEM umum yang bisa didownload dari Microsoft. Usahakan lebih baik install tanpa harus memformat harddisknya. Kalau tidak diformat, installer windows akan otomatis mengubah installasi windows yang sekarang adamenjadi Windows.old, sehingga jika masih ada yang lupa kita backup masih ada di folder tersebut. Ketika diminta product key, dikosongi dulu saja dan lanjutkan proses installasi windowsnya sampai selesai. Jika sudah selesai, install semua driver perangkat yang dibutuhkan.

Langkah Keempat, letakkan kembali folder yang dibackup pada langkah kedua tadi ke posisi masing-masing persis seperti ketika membackupnya serta jalankan juga file reg yang kita export sebelumnya. Khusus file theme, bisa kita letakkan di C:\Windows\Resources\Themes\ kemudian restart komputernya.

Langkah Kelima, jalankan command prompt (cmd) dengan mode “Run as administrator”. Setelah muncul, ketikkan perintah “slmgr -ilc C:\Windows\System32\OEM\oem-cert.xrm-ms” (untuk menginstall file lisensi yang sudah kita backup sebelumnya) lalu tekan enter dan tunggu sampai ada popup windows yang mengatakan kalau lisensi berhasil diinstall.

Langkah Keenam, lakukan aktivasi windowsnya dengan cara klik kanan Computer – Properties. Pada bagian Windows Activation, klik change product key, masukkan product key yang kita backup sebelumnya menggunakan tool ABR pada langkah ketiga. Lanjutkan sampai proses aktivasi selesai tanpa harus terkoneksi internet.


Itulah yang saya lakukan untuk mendowngrade Preinstalled Windows 7 Professional 64bit menjadi Windows 7 Professional 32 bit pada beberapa komputer yang dibeli perusahaan.

Semoga sharing pengalaman ini bermanfaat.

Monday, January 13, 2014

Masalah "Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent" di PHP - bagian 2

Pada tulisan sebelumnya:
"Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent"
Pesan error di atas muncul bukan karena salah ngetik script php. karena itulah hal ini membuat saya bingung sampai beberapa hari. Apalagi jika settingan web servernya tidak menampilkan pesan error, malah tambah bingung...! ...
============================

Setelah beberapa lama, ada lagi permasalahan yang sama yang dialami teman waktu belajar php. Katanya sudah mencoba solusi yang saya tawarkan...tapi tetep aja muncul masalahnya. (sambil garuk-garuk kepala yang sebenarnya gak gatal)

Untuk membantu teman tersebut, akhirnya saya coba cari-cari lagi di google. Eh...ternyata pada halaman hasil pencarian di google...di baris kedua ada hasil pencarian yang depannya ada tulisan [RESOLVED]...dst. (aha...ini mungkin jawabannya..)

Akhirnya saya buka link tersebut (http://board.phpbuilder.com/showthread.php?10310794-RESOLVED-Warning-session_start()-Cannot-send-session-cookie-headers-already-sent) yang juga merupakan forum yang ternyata juga ada bahasan masalah yang sedang kami (saya dan teman saya) alami.

Dibaca-baca...ternyata masalahnya juga bukan karena salah script tapi adalah program editor yang digunakan. Kaitannya dengan jenis atau metode penyimpanan program editor tersebut. Sehingga disitu disarankan agar isi script yang ada dicopy lagi dan buat file baru dengan notepad (editor paling sederhana) kemudian disimpan menjadi file php dengan ENCODINGnya menggunakan ASCII atau UTF-8 without the BOM (byte order mark). Akhirnya saya coba saja...copy script ke file notepad baru dan menyimpannya "Save as Type"nya "All Files" dengan "ENCODING"nya "ANSI".

Dicoba deh...ternyata bisa...! akhirnya masalahnya sudah ketemu. Akhirnya teman saya harus melakukan langkah di atas tersebut pada setiap file php yang muncul masalah serupa.


Wednesday, October 31, 2012

Tutorial Contoh Membuat Data Report Database Sederhana dengan Microsoft Visual Basic 6.0

Setelah kita membuat program database sederhana pada posting Tutorial Contoh Program Database Sederhana dengan Microsoft Visual Basic 6.0, kita akan melanjutkan program yang dibuat tersebut dengan membuat laporan untuk menampilkan record yang ada dalam database.


Ada dua langkah utama untuk membuat data report yang sudah disediakan oleh Microsoft Visual Basic 6.0:
  1. Membuat Data Environment.
  2. Membuat Data Report.
Kita buka kembali project sebelumnya yang sudah ada. Misalkan: project program data teman. Kemudian kita buat reportnya. Dengan 2 langkah umum sebagai berikut:



1.      Membuat Data Environment
a.       Pada menu Project, pilih sub menu More ActiveX Designer…, klik Data Environment.


 
b.      Dalam jendela Data Environment,
-          pilih Connection1 kemudian klik kanan dan pilih Properties.



-          Dalam dialog box Data Link Properties, pilih Microsoft Jet 4.0 OLE DB Provider.



-          Klik Next untuk berpindah ke tab Connection.
-          Klik tombol Elipsis (…). Cari file database data teman (DataTeman.mdb).



-          Klik OK untuk menambah designer pada menu anda.

c.       Sekarang kita akan mengenalkan Data Environment dengan database.
-          Klik kanan tab Connection1 dan klik Rename untuk mengubah nama koneksinya. Ubahlah nama tersebut dengan nama Teman.
-          Klik kanan nama tab yang baru (Teman) dan klik Add Command untuk membuat tab Command1.
-          Klik kanan tab tersebut (Command1) dan pilih Properties.
-          Isilah propertinya dengan nilai berikut:
Command Name          = DataTeman
Connection                    = Teman
Database Object           = Table
Object Name                 = Tteman



-          Klik OK. Semua yang dibutuhkan untuk koneksi ke database kita sudah selesai.

d.      Tampilkan jendela properties dan berikan nama untuk data environment dengan nama DenvTeman. Simpan Environment ini pada folder project anda dengan cara klik File -- Save DenvTeman.dsr



Tampilan akhir langkah 1:


2.        Membuat Data Report
a.       Pada menu Project, klik Add Data Report




b.     Isilah properties pada report seperti berikut:
Name                          = rptTeman
Caption                      = Daftar Nama Teman
DataSource                = DEnvTeman                   (dipilih, jgn dketik)
DataMember             = DataTeman                    (dipilih, jgn dketik)
c.  Klik kanan Report dan klik menu Retrieve Structure. Hal ini akan membentuk report dengan dasar format seperti pada Data Environment.
d.      Dalam file report terdapat lima bagian: Report Header, Page Header, Detail Section, Page Footer, dan Report Footer.
-   Page Header dan Page Footer berisi informasi yang ingin ditampilkan pada setiap halaman.
-   Detail Section digunakan untuk membuat layout informasi yang ingin anda cetak dari setiap record pada file database anda.
e.   Tambahkan data report controls yang diperlukan untuk menampilkan infrmasi yang kita inginkan.
-          Untuk menambahkan contrrol yang digunakan dengan klik kanan, pilih Insert Control, kemudian pilih control yang diperlukan untuk dipasang.


 -       Khusus untuk detail sections, kita bisa menambahkan textbox untuk menampilkan data pada bagian ini dengan cara: pada jendela Data Environment (DEnvTeman), klik field yang diinginkan (misal: Nama) kemudian drag ke bagian detail pada data report. Dua item akan ditampilkan: sebuah label Nama dan sebuah textbox Nama(DataTeman). Labelnya untuk informasi header, karena itu, pindahkan (drag) ke bagian page header. Sedangkan textboxnya untuk bagian detail, jadi biarkan saja letaknya pada bagian detail sections.
-      Atur control-control lainnya sedemiikian rupa sesuai dengan informasi yang kita butuhkan.


-          Simpan Data reportnya dengan klik menu File - Save rptTeman. Simpan pada direktori tempat project anda.


Data report sudah selesai kita buat. Sekarang kita tambahkan CommandButton pada form yang ada untuk menampilkan laporan yang sudah kita buat sebelumnya.
Ubah propertiesnya sebagai berikut:
Name           = CmdReport
Caption       = Report
Kemudian pada event click, ketikan kode berikut:

Private Sub CmdReport_Click()
    rptTeman.Show 1
End Sub




 

Saturday, September 29, 2012

Tutorial Contoh Program Database Sederhana dengan Microsoft Visual Basic 6.0



Akhir-akhir lebih sering lihat-lihat postingan di blog ini…akhirnya jadi ingat pernah bikin tutorial buat bantu teman belajar database di Microsoft Visual Basic 6. Pertama kali yang dipelajari tentunya menggunakan database Microsoft Access.
Waktu itu aku kasih aja langkah-langkah buat program database yang sederhana.
Contoh project Microsoft Visual Basic 6.0 menggunakan database Microsoft Access step by step:
Langkah-langkah
  1. Buat project baru
File - New Project
Pilih STANDAR EXE kemudian klik OK
  1. Tambahkan komponen pada toolbox. Klik kanan pada toolbox - component - Microsoft Datagrid Control 6.0 (OLEDB) - OK
  2. Aturlah property formnya sebagai berikut :
    • Name       : Frm_Utama
    • Caption    :  ..::|| Data Teman ||::..
  1. Pada Frm_Utama aturlah objek-objek seperti tampilan berikut :














Obyek
Property
Setting
Label1
Caption
Nama
Label2
Caption
Alamat
Label3
Caption
TTL
Label4
Caption
Telp
Text1
Name
Text
TNama

Text2
Name
Text
TAlamat

Text3
Name
Text
TLahir
Text4
Name
Text
TTelp
Command1
Name
Caption
CmdBaru
Baru
Command2
Name
Caption
CmdSimpan
Simpan
Command3
Name
Caption
CmdEdit Edit
Command4
Name
Caption
CmdUpdate
Update
Command5
Name
Caption
CmdBatal
Batal
Command6
Name
Caption
CmdHapus
Hapus
DataGrid1
Name
AllowUpdate
DB
False

  1. Buat database data teman.Mdb
a.   Dari jendela Visual Basic Klik menu Add-Ins dan pilih Visual Data Manager dan akan muncul tampilan sbb:


b.   Klik menu File - New - Microsoft Acces kemudian pilihlah Version 7.0 seperti gambar berikut :

 c.   Selanjutnya ditampilkan kotak dialog Select Microsoft Acces Database to Create. Tentukan tempat untuk menyimpan database yang dibuat dengan nama DataTeman. Seperti pada gambar berikut :


d.   Klik Save
  1. Buat table Data Teman
a.    Klik kanan pada jendela Database window, kemudian pilihlah New Table dari popup menu yang ditampilkan.

Sehingga ditampilkan jendela berikutnya dengan nama Table Structure, ketikkan nama tabelnya = TTeman pada kotak Table Name


b.    Klik tombol Add field untuk membuat field baru dan buatlah field sbb :


Nama_Field
Type
Size
Nama
Text
50
Alamat
Memo

Lahir
Text
30
Telp
Text
20

c.    Deklarasikan variable untuk membuka database
Option Explicit
'Koneksi merupakan variabel untuk dihubungkan dengan file databasenya
Public Koneksi As New ADODB.Connection
'rsteman merupakan variabel untuk memanggil data record
Public Rsteman As New ADODB.Recordset

d.    Buat prosedur (Sub) untuk membuka database
Private Sub BukaDatabase()
'Perintah untuk memanggil database
    Koneksi.CursorLocation = adUseClient
    Koneksi.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\Chinta's documents\Kul\temen\23 Agt 07\DataTeman.mdb;Persist Security Info=False"
‘(Jika tidak tau provider maka tambahkan adodc dan konekkan terus copy conection stringnya)
'Untuk alamat file databasenya bisa dibuat dinamis mengikuti alamat aplikasi dengan mengganti:
 Koneksi.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\Chinta's documents\Kul\temen\23 Agt 07\DataTeman.mdb;Persist Security Info=False" 
menjadi
Koneksi.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "DataTeman.mdb;Persist Security Info=False" 


'perintah untuk memanggil record dari masing2 tabel
    Rsteman.Open "tteman", Koneksi, adOpenStatic, adLockOptimistic
End Sub

e.    Dan  ketik Script dibawah ini
·         Script pada Tombol Baru
Private Sub CmdBaru_Click()
‘Untuk membersihkan field ketika tombol baru diklik
    TNama.Text = ""
    TAlamat.Text = ""
    TLahir.Text = ""
    TTelp.Text = ""
‘untuk meletakkan kursor pada TNama Saat Tombol baru diklik
    TNama.SetFocus
    buka
    CmdBaru.Enabled = False
    CmdSimpan.Enabled = True
    CmdEdit.Enabled = False
    CmdUpdate.Enabled = False
    CmdBatal.Enabled = True
    CmdHapus.Enabled = False
End Sub

·         Script pada Tombol Batal
Private Sub CmdBatal_Click()
    kunci
    CmdBaru.Enabled = True
    CmdSimpan.Enabled = False
    CmdEdit.Enabled = True
    CmdUpdate.Enabled = False
    CmdBatal.Enabled = False
    CmdHapus.Enabled = True
End Sub

·         Script pada Tombol Edit
Private Sub CmdEdit_Click()
‘untuk memanggil procedure buka
    buka
    CmdBaru.Enabled = False
    CmdSimpan.Enabled = False
    CmdEdit.Enabled = False
    CmdUpdate.Enabled = True
    CmdBatal.Enabled = True
    CmdHapus.Enabled = False
End Sub

·         Script pada Tombol Hapus
Private Sub CmdHapus_Click()
‘ketika tidak ada data yang dihapus maka tidak eror
    If Rsteman.RecordCount = 0 Then Exit Sub
‘ketika kursor tidak pada grid maka tdk eror
        If Rsteman.AbsolutePosition < 0 Then
            MsgBox "Pilih yang akan dihapus", vbOKOnly + vbInformation, "Info"
        End If
‘perintah utnuk menghapus data
    Rsteman.Delete
End Sub

·         Script pada Tombol Simpan
Private Sub CmdSimpan_Click()
    'Rsteman nama variabel u/ memanggil data record
    'jika menggunakan komponen adodc maka scriptx adodc1.recordset.addnew
    Rsteman.AddNew
    Rsteman.Fields(0).Value = Trim(TNama.Text)
    Rsteman.Fields(1).Value = Trim(TAlamat.Text)
    Rsteman.Fields(2).Value = Trim(TLahir.Text)
    Rsteman.Fields(3).Value = Trim(TTelp.Text)
    Rsteman.Update
    kunci
    CmdBaru.Enabled = True
    CmdSimpan.Enabled = False
    CmdEdit.Enabled = True
    CmdUpdate.Enabled = False
    CmdBatal.Enabled = False
    CmdHapus.Enabled = True
End Sub

·         Script pada Tombol Update
Private Sub CmdUpdate_Click()
    Rsteman.Fields(0).Value = Trim(TNama.Text)
    Rsteman.Fields(1).Value = Trim(TAlamat.Text)
    Rsteman.Fields(2).Value = Trim(TLahir.Text)
    Rsteman.Fields(3).Value = Trim(TTelp.Text)
    Rsteman.Update
    kunci
    CmdBaru.Enabled = True
    CmdSimpan.Enabled = False
    CmdEdit.Enabled = True
    CmdUpdate.Enabled = False
    CmdBatal.Enabled = False
    CmdHapus.Enabled = True
End Sub

·         Script pada DataGrid
Private Sub DB_RowColChange(LastRow As Variant, ByVal LastCol As Integer)
    TNama.Text = Rsteman.Fields(0).Value
    TAlamat.Text = Rsteman.Fields(1).Value
    TLahir.Text = Rsteman.Fields(2).Value
    TTelp.Text = Rsteman.Fields(3).Value
End Sub

·         Script pada Form load
Private Sub Form_Load()
    'untuk membuka/mengkonekkan databasenya
    BukaDatabase
    'untuk menghubungkan datagrid ke datasource
    Set DB.DataSource = Rsteman
    kunci
    CmdBaru.Enabled = True
    CmdSimpan.Enabled = False
    CmdEdit.Enabled = True
    CmdUpdate.Enabled = False
    CmdBatal.Enabled = False
    CmdHapus.Enabled = True
End Sub

·         Procedure Buka
Private Sub buka()
    TNama.Locked = False
    TAlamat.Locked = False
    TLahir.Locked = False
    TTelp.Locked = False
End Sub

·         Procedure Kunci
Private Sub kunci()
    TNama.Locked = True
    TAlamat.Locked = True
    TLahir.Locked = True
    TTelp.Locked = True
End Sub