Social Icons

Pages

Jumat, 04 September 2009

MengJalankan (mentrigger) Aplikasi EXE dari Page ASP.NET (Bag. 1)


Sumber: http://cakmamed.freehostia.com/wordpress/?p=145

Pengantar
Beberapa saat yang lalu saya menemui problem,
bagaimana menjalankan EXE file yang di-trigger oleh event button_click di ASP.NET page
Kelihatannya Mudah ya :P , Ternyata lumayan rumit :P
Masalah ini menjadi sangat penting, manakala kita dihadapkan pada suatu rancangan sistem yang menuntut untuk melakukan interoperability dengan sistem atau aplikasi di luar framework dari sistem kita.
Kenapa kita melakukan interoperability dengan sistem lain ?
Dalam mendisain suatu sistem beberapa kendala kerap kali muncul, baik yang bersifat teknis maupun non teknis.
dari sisi teknis misalnya adanya keterbatasan dari performa resource sistem sehingga menuntut kita untuk mengadopsi suatu layanan yang ada di sistem lain.
Non teknis, saya ambil contoh masalah cost produksi aplikasi / sistem , sehingga perlu memaksimalkan fungsi yang sudah tersedia meskipun fungsi tersebut berada diluar framework kita.

Oke, sampai disini harapannya kita sudah mengetahui target dari pembahasan saya ini.

ASP.NET page untuk menjalankan Aplikasi Notepad.EXE

Membatasi lingkup permasalahan, sebagai contoh kasus saya mencoba menjalankan aplikasi Notepad.exe yang di trigger oleh command button
Untuk mempermudah pekerjaan ini saya mengunakan Microsoft Visual Web Developer 2008 Express Edition sebagai IDE untuk membuat halaman WEB.

kita siapkan New Website dan kita isi dengan object button.

gbr1

Kembali ke lingkup IDE, double klik button sehingga source editor tampil, dan siap untuk proses koding.
Script ditulis dengan menggunakan bahasa C#
...
...
using System.Diagnostics;
...

protected void Button1_Click(object sender, EventArgs e)
{
ProcessStartInfo informasi = new ProcessStartInfo("notepad.exe");
informasi.UseShellExecute = false;
informasi.RedirectStandardInput = true;
informasi.RedirectStandardError = true;
informasi.RedirectStandardOutput = true;
using (Process install = Process.Start(informasi))
{
string output = install.StandardOutput.ReadToEnd();
install.WaitForExit();
Console.WriteLine(output);
}

}

Dari lingkup IDE, kita jalankan Aplikasi ini.
Klik button, sehinnga disini bisa kita lihat aplikasi Notepad dijalankan,

gbr2

Do you think that my proublem is solved ? :P

ternyata saya terlanjur masuk dalam suatu lorong permasalahan,
dan harus menemukan pintu keluar. *terlalu didramatisir ya ?! :P

Problem baru muncul :(

Ketika saya publish aplikasi WEB tersebut kedalam webserver IIS
Aplikasi ini tidak berjalan semestinya, Notepad tidak ditampilkan !!

Apa yang terjadi ? Apakah aplikasi ini berjalan benar?
Akan kita sampaikan di bagian ke-2

Bersambung ...

Salam Hangat,
Cakmamed
for Takwa Inspiration

 

Sample text

Sample Text

Sample Text