Archive for the ‘programming’ Category

Symbian Developer Certificate

Thursday, November 8th, 2007

Untuk mengetes aplikasi kita di device symbian kita mengharuskan meng-sign-kan applikasi kita, tentu tidak selalu harus, hanya beberapa capabilities yang mengharuskan sign applications, seperti ReadDeviceData. Tapi kalau setiap kita test kita meng-sign-kan applikasi kita tentu gak mungkin disamping waktu juga uang, makanya symbian signed memberikan solusinya dengan memberikan symbian developer certificate, gratis. Berikut langkah untuk signing applications:

  1. Register di situs symbiansigned, jangan pakai alamat email gratisan seperti yahoo atau gmail, mereka akan menolaknya. Pakailah email kantor Anda, gw coba cbn.net.id aja gak bisa.
  2. Download DevCertRequest tool, ini untuk mengerate certificate (.*cer) dan private key (.*key)
  3. Genarate certicate dan private key dengan menggunakan DevCertRequest tool tadi, certificate Anda hanya berlaku untuk beberapa device dengan memberikan IMEI-nya.
  4. Upload *.cer hasil dari langkah nomor 3 ke request developer certivate
  5. Download *cer, dan gunakan untuk signing applikasi kita salah satunya dengan perintah createsis
    createsis create -cer mycer.cer -key mykey.key -pass password myapp.pkg

update: sekarang developer certificate harus mempunyai Publisher ID, yang notabene gak gratis, harganya $200/tahun.

Kirim Sms di Symbian

Sunday, November 4th, 2007

Kode untuk mengiri sms di symbian ada beberapa pendekatan tapi pendekatan yang paling mudah adalah menggunakan RSendAsMessage , cukup dengan beberapa baris

// Link:sendas2.lib
#include <rsendas.h>
#include <rsendasmessage.h>
#include <senduiconsts.h>
void SendSmsL(const TDesC& aMessage,const TDesC& aRecipient)
{
// Buka konekso dengan SendAs server
RSendAs saSrv;
saSrv.Connect();
CleanupClosePushL(saSrv);

// Create your message
RSendAsMessage msg;
msg.CreateL(saSrv, KSenduiMtmSmsUid);
CleanupClosePushL(msg);
msg.AddRecipientL(aRecipient,RSendAsMessage::ESendAsRecipientTo);
msg.SetBodyTextL(aMessage);
// Kirim
msg.SendMessageAndCloseL();
// Cleanup
CleanupStack::Pop(&msg);
CleanupStack::PopAndDestroy(&saSrv);
}

Keunggulan penggunaan SendAs adalah tidak memerlukan Capabilities apa-apa. kekurangnny: hanya berjalan untuk symbian 3rd edition, dan setiap pengiriman selalu ada konfirmasi apakah user mengijinkan untuk mengirim atau tidak.

source Programatically sending an SMS Message

Menggunakan Feature Dr. Watson

Thursday, November 1st, 2007

Dr. Watson adalah tools di Windows untuk meng-dump jika terjadi crash pada program yang jalan, jika dr. watson aktive maka begitu program crash akan membuat file dump dan log di folder yang telah ditentukan. File dump ini bisa dijalankan di Microsoft Visual Studio 2005, untuk dijalankan dan layaknya proses debuging begitu di run maka akan berhenti dibaris dimana program crash, menyimpan memory serta call stack, ini berguna untuk nge-trace kesalah program kita.

Berikut langkah cara menggunakan dr. watson.

  1. Aktifkan dr. watson di mesin yang akan dijalankan program kita, dengan mentetik drwtsn32 -i di windows Run
  2. Setting dr. watson dengan me-run drwats32. Pilih crash dump yang mini, sehingga file dump-nya kecil. dan aktifkan “Create Crash dump file”
  3. Aktifkan debugging info di program anda. di microsoft visual studio: Project->Properties->Linker, set Generate Debug Info jadi Yes(Debug) terus recompile lagi

video tutorialnya bisa dilihat di How Do I: Create and Analyze a Mini-Dump File in Windows?

IPB C Contest

Saturday, September 8th, 2007

IPB mengadakan IPB C Contes, yah C, bahasa C, sebuah bahasa pemrograman komputer bukan yang lain, jangan kecele dengan institusi penyelenggaranya Institut Pertanian, mereka gak melulu pertanian koq, ada juga jurusan Ilmu Komputer-nya juga, ajang dimana mahasiswa IPB khususnya, dan masyarakat pada umum untuk mencoba sejauh mana kemampuan untuk menyelesaikan permasalahn dengan menggunakan bahasa C.

Soal akan diberikan secara online, kita ditugaskan untuk menyelesaikannya dan mengupload jawaban berbentuk source code. kemudian system mereka akan menilai secara otomatis.

Disamping ajang kontes, juga sebagai media komunikasi antar komunitas C, maka buruan gabung, gratis koq.

click link di IE otomatis running program

Tuesday, September 4th, 2007

Jika Anda install Yahoo messenger terus klik link ymsgr:sendIM?stumpukunek2 ini maka otomatis menampilkan dialog chat-nya yahoo messenger.

Gimana buat hal tersebu. untuk pengguna IE cukup mengedit regedit, misal kita ingin membuat suatu link testnote:foo yang otomatis buka aplikasi notepad.exe


[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\testnote]
@="URL: Notepad"
"URL Protocol"=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\
testnote\shell]
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\
testnote\shell\open]
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\
testnote\shell\open\command]
@="notepad.exe"

Mendapatkan list IP dari sebuah domain

Thursday, July 12th, 2007

Dalam satu domain biasanya akan mempunyai entry IP yang lebih dari satu, untuk mendapatkan semua IP dari sebuah domain, berikut source code buat bahasa c ada di bawah ini:

hostent* host=gethostbyname("google.com");
for(int i=0;host->h_addr_list[i];i++){
in_addr addr;
memcpy ((void *) &addr, host->h_addr_list[i], host->h_length);
printf("%s\n",inet_ntoa(addr));
}

Untuk anda programmer php anda bisa pakai fungsi gethostbynamel perhatikan huruf l dibelakangnya, itu akan mengembalikan array yang isinya ip-ip bersangkutan, kalau tanpa l maka hanya akan mengembalikan 1 ip saja.

Visual Leak Detector

Tuesday, June 26th, 2007

Dalam programming kita mengenal leak memory atau kebocoran memory, khusunya bahasa low level programming seperti C atau C++. Dalam bahasa pemrograman “maju” yang sudah mengenal garbage collection seperti Java, mungkin gak akan mengenal namanya leak memory. Leak memory adalah keadaan dimana suatu memory allocation yang tidak di “Free”-in. padahal sudah tidak digunakan atau malah pointer-nya sudah “menggantung” atau dangling pointer . Leak memory akan menjadi masalah besar jika program running dalam kurun waktu lama. karena banyak memory yang terpakai. untuk program yang runnning nya hanya sebentar leak memory tidak begitu masalah.

Sehingga harus diperhatikan dengan seksama, sayangnya di visual studio tools untuk mendiagnosa terjadinya leak ini minim sekali, maka diperlukan adanya tools untuk mendeteksi adanya leaks memory yang lebih bagus. teorinya untuk mendeteksi adanya leaks memory dengan melihat apakah ada memory yang belum di release di dalam heap begitu program keluar.

Perkenalkan sebuah tools Visual Leak Detector (VLD), sebuah tools untuk microsoft visual studio, free dan mudah dalam penggunaannya.

Untuk menggunakan VLD ikutin langkah berikut:

  1. Copy library VLD (*.lib) ke folder “lib” instalation Visual C++.
  2. Copy VLD header files (vld.h dan vldapi.h) ke folder “include” instalan Visual C++.
  3. Dalam file dimana ada fungsi main include file “vld.h”, usahakan include file ini sebelum menginclude file laiinya.
  4. Build debug version project anda.
  5. Debug program anda, untuk melihat deteksi leak memory exit program anda dan lihat di output window di visual studio.

Jikda leak memory terdeksi akan muncul dimana dan apa isi memory yang mengakibatkan leak memory, tinggal kita mencari tahu gimana me-relase memory tersebut