Friday, June 18, 2010

Error 34 minutes remining waktu install Windows Server 2003

MAAAAAAAN... this is really nuts!

Beberapa waktu yang lalu (gak terlalu lama - belum ada sebulan) - saya membeli komputer untuk server; Processor Intel Core 2 Quad Q8400 (2.66GHz, FSB 1333MHz, L2 Cache 4MB) dengan mo-bo Gigabyte GA-G41M-52L.

... dan waktu saya install Windows Server 2003 (masih 32bit) --- SELALU HANG saat 34 min remaining. Berkali-kali dicobain; gagal terus. Yang terakhir malah saya biarkan hang sampai 45 menit. Tapi si komputer tetap hang.

Support Microsoft seperti biasa tidak membantu. Mereka bilang itu karena driver SATA2 harus di load dulu. Dan untuk me-load, perlu punya driver SATA2 DALAM BENTUK floopy disk! HAAAH?!!! Bweeeek.... floppy disk! dimana kita bisa mencari floppy disk sekarang? Tidak bisa pakai CD ROM/DVD karena 'sudah by design'. Kalau mau pakai CD, driver SATA2 harus di-inject dengan mendownload program (bla-bla-bla... bingung deh pokoknya). Kalau mau mengerjakan sendiri, silahkan lihat article KB sekian-sekian.... (makin bingung).

Dalam keputusasaan, saya coba untuk menginstall Windows XP dulu, baru rencana-nya upgrade ke Windows Server. Harapan saya, semoga driver SATA yang diinstall di XP akan bisa dimanfaatkan oleh program setup Windows Server 2003. Ternyata masih gagal.

Jalan-jalan ke internet juga menghasilkan hasil yang hampir sama. Rata-rata bilang error di menit ke-34 itu karena hardware; berarti SATA2 juga yang jadi masalah. Nah, tapi ada satu forum, yang bilang bahwa itu karena setup Windows 2K3 ada masalah dengan keyboard USB lama! Na lho! Saya masih  pakai keyboard favorite saya -- dan memang betul. Ini keyboard USB lama. Iseng-iseng, saya ganti dengan keyboard PS/2, dan... JALAN! Normal tanpa hang.

Thank God... But this is really NUTS! Cuma gara-gara salah keyboard -- habis waktu sampai 6 jam! Semoga ini bisa membantu Anda; Kalau Anda menginstall Windows dan hang -- terutama saat 34 minutes remaining... cobalah ganti keyboard.

Saturday, June 05, 2010

Microsoft menutup forum-nya yang berbasis nntp - termasuk forum VFP :(

Halo rekan-rekan foxpro Indonesia....
Sedikit berita sedih... Microsoft sejak awal juni kemarin menutup server nntp-nya (microsoft.public.xxxxx ). Sedih karena, jujur, itu adalah tempat hang out saya sejak tahun 2001. Di sana saya mengenal banyak senior-senior foxpro kelas dunia seperti Nancy Folsom, Cindy Winegarden, Steven Wuebe, Igor, Eric Den Doop, Robert Ansell, dll-dll-dll.... dari sana juga saya banyak dapat link-link ke forum-forum lain yang luar biasa. Dari sana juga saya belajar dan bertanya. Singkatnya - kalau ibarat seorang anak, saya merasa 'dibesarkan' oleh forum itu. Dan sekarang microsoft menutupnya.... Dasar b*go!

Anyway, alasan microsoft adalah seperti ini:

Date 5/4/2010
Starting in early summer 2010, Microsoft will begin progressively closing down the Microsoft public newsgroups to enrich conversations in the rapidly-growing forum platform.  This decision is in response to worldwide market trends and evolving customer needs. 

Microsoft continues to invest in forums to reduce customer effort, consolidate community venues and make it easier for active contributors to retain their influence. Forums provide a healthy community environment with less spam and make answers easier to find by customers and search engines.  Additionally, forums offer a better user and off-topic management platform that will improve customer satisfaction by facilitating discussions in a clean space.  

We understand that some newsgroups are still active, and important to the community.  In the coming days and weeks, we will be rolling out tools and resources to minimize disruption to the community discussions. 

We are working diligently on providing additional resources and information in local languages later this week.  In the meantime, please refer to the official Microsoft Newsgroup website http://www.microsoft.com/communities/newsgroups/default.mspx concerning this issue.  The Microsoft Newsgroup website will be made available in additional languages in the next few days.

Singkat cerita, alasan microsoft, forum newsgroup sudah 'ketinggalan jaman' apalagi dengan adanya forum berbasis web dan social network yang sekarang berkembang pesat. Tapi, microsoft lupa keunggulan-keunggulan nntp. Yang sangat saya rasakan selama menggunakan forum newsgroup adalah forum nntp jauh lebih cepat dari forum web karena berbentuk teks mode. Gratis - tidak perlu login-login-an. Dan yang untuk saya paling penting dari dulu; bisa dengan mudah di-download secara offline dengan size yang kecil (sekali lagi-- karena text mode) jadi bisa dipelajari/dibaca sambil dimana saja. Saya ingat dulu sering nge-print thread-thread di forum dan membawa print out itu ke wc untuk di baca sambil 'ngebom'... Ha-ha-ha... jorok sedikit.... Tapi ya, memang begitulah. Saya belajar banyak melalui forum. Dan sekarang ditutup. Untuk saya penutupan forum ini lebih menyakitkan daripada waktu microsoft mengumumkan bahwa VFP10 gak akan ada. MICROSOFT SUUUUUUUUUCCCCCCCCKS! Mungkin memang untuk ke depan kita harus memikirkan alternatif lain selain produk microsoft. Beberapa hari yang lalu, waktu online di forum ubuntu, saya lihat ada signature seorang user di sana; tulisannya gini: "I've been Microsoft free for 322 days". Yah- kira-kira seperti gitu deh... Hmmmmmm............. Kapan ya saya bisa bikin signature seperti itu?

Friday, June 04, 2010

GUID di Foxpro 2.6 for DOS (atau bahkan Clipper)

Halo semua....

Udah tau GUID? Kalau belum, silahkan jalan-jalan ke situs wiki mengenai GUID . Selanjutnya, pernah kepikir gak untuk menggunakan GUID di aplikasi foxpro for DOS? He-he-he... sekarang, triknya; gimana caranya aplikasi DOS bisa bikin GUID? Jawabnya; susah! Harus ambil mac address, bikin random number sesuai dengan algoritma GUID.... wah.. repot deh... Waktu kemarin ini saya memulai project saya, sempet bingung juga tuh.... Tapi untung selalu ada solusi kalau mau sedikit ngulik. Awalnya, saya bikin program kecil ini dengan VFP:
Set talk off

Declare Integer CoCreateGuid In Ole32.Dll ;
    string @lcGUIDStruc

Declare Integer StringFromGUID2 In Ole32.Dll ;
    STRING cGUIDStruc, ;
    STRING @cGUID, ;
    LONG nSize

lcFilename = putfile("File &name:", "", "DBF")

if !empty(lcFilename)
    Create cursor [xGuid] (guid c(36))

    For i = 1 to 100000
        Insert into [xGuid] ;
        Values (NewGuid())
        if i%100 = 0
            wait transform(i) window nowait
        endif

    Endfor

    Select [xGuid]
    Copy to (lcFilename) type FOX2X

    Messagebox("Done", 64, "Generate GUID")
endif

*----------------------------------------------------------------------------
* Function    : NewGuid
* Entry with  : none
* Return with : A valid 36-chars GUID value
*----------------------------------------------------------------------------
Function NewGuid
    local lcStruc_GUID
    local lcGUID
    local lnSize
   
    lcStruc_GUID = Space(16)
    lcGUID = Space(80)
    lnSize = 40
   
    If CoCreateGuid(@lcStruc_GUID) = 0 And ;
            StringFromGUID2(lcStruc_GUID,@lcGUID,lnSize) <> 0
        lcGUID = Substr( Strconv(Left(lcGUID,76),6), 2, 36 )
    Else
        lcGUID = .F.
    Endif
   
    Return lcGUID
Endfunc
Lalu, file tersebut (yang berisi 100,000 GUID) dalam format Fox2x - dengan size sekitar 3.5meg - saya copy-kan ke folder data aplikasi FPD26 saya. Nah.. sekarang saya punya 100,000 GUID yang siap pakai. Untuk aplikasi saya, ini adalah jumlah yang jauh dari cukup untuk transaksi satu hari di satu komputer. Karena GUID selalu unik, kalaupun saya men-generate 10 file GUID untuk 10 komputer, dijamin tidak akan ada GUID yang sama (asal jangan satu file GUID yang sama di-copy ke dua komputer!). Nah, pada saat aplikasi DOS memerlukan Primary key, tinggal ambil data dari guid. Paling gampang, ambil aja field pertama. Setelah ambil, langsung hapus. Jadi field itu tidak akan bisa dipakai lagi.

Mungkin Anda bertanya sekarang, "Untuk apa menggunakan GUID di aplikasi DOS?" Nah... tujuannya, supaya kalau data hasil transaksi di aplikasi DOS itu ditarik ke SQL Server, maka kita tidak perlu lagi mengatur primary key-foreign key. Primary key dan foreign key tinggal pakai dari data asli saja. Toh tidak akan konflik. "Gimana kalau semua GUID di file dictionary-nya terpakai semua?" Yah, jangan sampai terpakai semua dong... Setiap hari isi aja dictionary dengan data GUID baru. Jadi GUID yang ada gak pernah kurang.

"Memangnya ini aplikasi apa sih? Kegunaannya untuk apa? Cara koneksi ke SQL Server-nya gimana?" He-he-he.... saya belum bisa sharing sekarang, karena selain ceritanya panjang, informasi itu juga sekarang masih 'classified' alias rahasia perusahaan... Jadi ide ini saya lemparkan karena untuk saya, ini adalah raw idea alias ide mentah. Aplikasinya? Silahkan berkreasi sendiri.... :)