Wrox Programmer Forums

Need to download code?

View our list of code downloads.

Go Back   Wrox Programmer Forums > ASP.NET and ASP > ASP.NET 1.0 and 1.1 > ASP.NET 1.0 and 1.1 Professional
Password Reminder
Register
| FAQ | Members List | Search | Today's Posts | Mark Forums Read
ASP.NET 1.0 and 1.1 Professional For advanced ASP.NET 1.x coders. Beginning-level questions will be redirected to other forums. NOT for "classic" ASP 3 or the newer ASP.NET 2.0 and 3.5
Welcome to the p2p.wrox.com Forums.

You are currently viewing the ASP.NET 1.0 and 1.1 Professional section of the Wrox Programmer to Programmer discussions. This is a community of tens of thousands of software programmers and website developers including Wrox book authors and readers. As a guest, you can read any forum posting. By joining today you can post your own programming questions, respond to other developers’ questions, and eliminate the ads that are displayed to guests. Registration is fast, simple and absolutely free .
DRM-free e-books 300x50
 
 
Thread Tools Search this Thread Display Modes
  #1 (permalink)  
Old March 21st, 2007, 06:56 AM
Authorized User
 
Join Date: Mar 2007
Location: , , .
Posts: 28
Thanks: 0
Thanked 0 Times in 0 Posts
Default device connected to client computer

dear friends,

i have a case like these :
1. we have a card reader (usb port connection)...
2. we must connect this reader to client computer (there are some clients in different cities)....
3. reader's function is to read and write from a card, whereas the card's source data is from database (ASP .NET)
4. firstly, i tried to add reference in ASP .NET web application to the reader's DLL,
but it can not make a live event trigger/connection to the clients since the DLL is installed in the web server...

5. then i think of other solution : client side programming..and i install the reader's DLL in client computer...so reader can interact lively...
6. but i don't know how to use DLL event, trigger in client side programming...can anybody help ?


could you help me how to do it properly.

Thank you,
hendy


  #2 (permalink)  
Old March 21st, 2007, 08:09 AM
Wrox Author
Points: 13,255, Level: 49
Points: 13,255, Level: 49 Points: 13,255, Level: 49 Points: 13,255, Level: 49
Activity: 0%
Activity: 0% Activity: 0% Activity: 0%
 
Join Date: Oct 2005
Location: Ohio, USA
Posts: 4,104
Thanks: 1
Thanked 64 Times in 64 Posts
Send a message via AIM to dparsons
Default

I have only ever done this one time so it may not apply exactly to what you are trying to do.

My company uses Topaz Signature pads to capture electronic signatures that are attached to various documents in our records management system.

This is how it works. A COM component is loaded on the client machine on a web page I use an OBJECT tag that calls this COM component and there is also so Javascript involved.

When the form posts, I have a reference to the same COM component that is on the clients machine in my Solution and I use the reference to this component to create an image based on an Array of points that make up the clients signature.

The component itself does NOT trigger any events other then it detects if a signature pad is present via USB or Serial ports. From that point on it only allows the user to sign their name on the Pad and have it displayed in the web browser, the user posts the form, and I deal with the array of points as necessary.

================================================== =========
Read this if you want to know how to get a correct reply for your question:
http://www.catb.org/~esr/faqs/smart-questions.html
^^Took that from planoie's profile^^
^^Modified text taken from gbianchi profile^^
================================================== =========
Technical Editor for: Professional Search Engine Optimization with ASP.NET
http://www.wiley.com/WileyCDA/WileyT...470131470.html
================================================== =========
Why can't Programmers, program??
http://www.codinghorror.com/blog/archives/000781.html
================================================== =========
  #3 (permalink)  
Old March 21st, 2007, 11:19 PM
Authorized User
 
Join Date: Mar 2007
Location: , , .
Posts: 28
Thanks: 0
Thanked 0 Times in 0 Posts
Default

Dear friends,

Perhaps, that's what i'm looking for...

the reader always detects card (listen to usb port).....
if there's no card detected then the reader will output messages :
================================================== ================
( X ) No TAG Selected or in Reachable Range : -3000
( X ) No TAG Selected or in Reachable Range : -3000
( X ) No TAG Selected or in Reachable Range : -3000
( X ) No TAG Selected or in Reachable Range : -3000

if a card is detected, a new message is triggered
and an event is triggered ....
==================================================

btw, could you please give me a sample code in your case ?

for analysis, i also attach the source code for windows application...
in windows application, it's a lot easier...

thank you,
hendy

======source code =================


private void fUJITIPE_Load(object sender, System.EventArgs e)
{

   pbFound.Visible=true;
   _ACR = new ACR120DLL.ACR120DLL ();
   _ACR.TotalBlocks = 44;//TOTAL BLOCK-1
   _AddListHandler = new ACR120DLL.ACR120DLL.AddListHandler(AddList);
   _ACR.AddList += _AddListHandler ;

   _ACR.SelectList +=new ACR120DLL.ACR120DLL.SelectListHandler (SelectList);

   _ACR.MsgBox +=new ACR120DLL.ACR120DLL.MsgBoxHandler (MsgBox);
   _ACR.TriggerPerformStep +=new ACR120DLL.ACR120DLL.ProgressStepHandler (progress_StepEvents);

    _ACR.TriggerReadyImg +=new ACR120DLL.ACR120DLL.ReadyImgHandler(Image_Events);

    _ACR.Connect();
   Timer1 = new System.Timers.Timer();
   Timer1.Elapsed +=new System.Timers.ElapsedEventHandler (TriggerReadData);
    Timer1.Interval = 1000;
    Timer1.AutoReset = true;
    Timer1.Start();

}

private void AddList(string Msg)
{
    if (Msg.EndsWith("-3030"))
    {
        MessageBox.Show("Ada kesalahan ! Mohon diulangi proses pembacaan kartu !");
        _ACR.AddList-= _AddListHandler;
        DisposeObjectReader();
        InitReader();
        return;
    }
    List1.Items.Add(Msg);
}

private void SelectList()
{
    List1.SelectedIndex = List1.Items.Count - 1;
}
private void MsgBox(string Msg)
{
    char[] _chr=new char[1];
    _chr[0]=':';
    string[] Message = Msg.Split(_chr);
    MessageBox.Show(Message[1], Message[0], MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
private void TriggerReadData(object o, System.Timers.ElapsedEventArgs e)
{
    ArrayList alData = new ArrayList();
    Timer1.Stop();
    progress.Value=1;
    alData= _ACR.ReadData();
    if (alData.Count == 45) //TOTAL BLOCKS
    {
        //
        string Nomor = alData[0].ToString().Replace ("\0","");
        string Perusahaan = alData[1].ToString().Replace ("\0","");
        string Alamat1 = alData[2].ToString().Replace ("\0","");
        string Alamat2 = alData[3].ToString().Replace ("\0","");
        string Alamat = Alamat1 + Alamat2;
        string Merek = alData[4].ToString().Replace ("\0","");
        string Tipe = alData[5].ToString().Replace ("\0","");
        string Jenis = alData[6].ToString().Replace ("\0","");
        string Peruntukan = alData[7].ToString().Replace ("\0","");
        string Varian = alData.ToString().Replace ("\0","");
        string KendaraanDiuji = alData[9].ToString().Replace ("\0","");
        string NomorRangka = alData[10].ToString().Replace ("\0","");
        string NomorMotorPenggerak = alData[11].ToString().Replace ("\0","");
        string PenanggungJawabPerusahaan = alData[12].ToString().Replace ("\0","");
        string KonfigurasiSumbu= alData[13].ToString().Replace ("\0","");
        string JarakSumbuIsampaiII= alData[14].ToString().Replace ("\0","");
        string JarakSumbuIIsampaiIII= alData[15].ToString().Replace ("\0","");
        string JarakSumbuIIIsampaiIV= alData[16].ToString().Replace ("\0","");
        string DimensiLebarTotal= alData[17].ToString().Replace ("\0","");
        string DimensiTinggiTotal= alData[18].ToString().Replace ("\0","");
        string DimensiJulurDepan= alData[19].ToString().Replace ("\0","");
        string DimensiJulurBelakang= alData[20].ToString().Replace ("\0","");
        string JumlahSilinder= alData[21].ToString().Replace ("\0","");
        string IsiSilinder= alData[22].ToString().Replace ("\0","");
        string DayaMotorPenggerakMaksimum= alData[23].ToString().Replace ("\0","");
        string BahanBakar= alData[24].ToString().Replace ("\0","");
        string UkuranBanSumbuI= alData[25].ToString().Replace ("\0","");
        string UkuranBanSumbuII= alData[26].ToString().Replace ("\0","");
        string UkuranBanSumbuIII= alData[27].ToString().Replace ("\0","");
        string UkuranBanSumbuIV= alData[28].ToString().Replace ("\0","");
        string KekuatanRancanganSumbuI= alData[29].ToString().Replace ("\0","");
        string KekuatanRancanganSumbuII= alData[30].ToString().Replace ("\0","");
        string KekuatanRancanganSumbuIII= alData[31].ToString().Replace ("\0","");
        string KekuatanRancanganSumbuIV= alData[32].ToString().Replace ("\0","");
        string JBBatauJBKB= alData[33].ToString().Replace ("\0","");
        string BeratKosong= alData[34].ToString().Replace ("\0","");
        string JBIatauJBKI= alData[35].ToString().Replace ("\0","");
        string DayaAngkutKg= alData[36].ToString().Replace ("\0","");
        string DayaAngkutOrang= alData[37].ToString().Replace ("\0","");
        string DayaAngkutBarang= alData[38].ToString().Replace ("\0","");
        string KelasJalanTerendah= alData[39].ToString().Replace ("\0","");
        string Berdasarkan= alData[40].ToString().Replace ("\0","");
        string TglTtd= alData[41].ToString().Replace ("\0","");
        string TempatTtd= alData[42].ToString().Replace ("\0","");
        string NamaPejabat= alData[43].ToString().Replace ("\0","");
        string NIPPejabat= alData[44].ToString().Replace ("\0","");

        //KIR
        txtNomor.Text = Nomor;
        txtPerusahaan.Text=Perusahaan;
        txtAlamat.Text=Alamat.Trim();
        txtMerek.Text=Merek;
        txtTipe.Text =Tipe;
        txtJenis.Text =Jenis;
        txtPeruntukan.Text =Peruntukan;
        txtVarian.Text =Varian;
        txtKendaraanDiuji.Text=KendaraanDiuji;
        txtNomorRangka.Text =NomorRangka;
        txtNomorMotorPenggerak.Text =NomorMotorPenggerak;
        txtPenanggungJawabPerusahaan.Text =PenanggungJawabPerusahaan;
        txtKonfigurasiSumbu.Text =KonfigurasiSumbu;
        txtJarakSumbuIsampaiII.Value =Convert.ToDecimal(JarakSumbuIsampaiII);
        txtJarakSumbuIIsampaiIII.Value=Convert.ToDecimal(J arakSumbuIIsampaiIII);
        txtJarakSumbuIIIsampaiIV.Value =Convert.ToDecimal(JarakSumbuIIIsampaiIV);
        txtDimensiLebarTotal.Value =Convert.ToDecimal(DimensiLebarTotal);
        txtDimensiTinggiTotal.Value = Convert.ToDecimal(DimensiTinggiTotal);
        txtDimensiJulurDepan.Value =Convert.ToDecimal(DimensiJulurDepan);
        txtDimensiJulurBelakang.Value =Convert.ToDecimal(DimensiJulurBelakang);
        txtJumlahSilinder.Value =Convert.ToInt32(JumlahSilinder);
        txtIsiSilinder.Value =Convert.ToDecimal(IsiSilinder);
        txtDayaMotorPenggerakMaksimum.Value =Convert.ToDecimal(DayaMotorPenggerakMaksimum);
        txtBahanBakar.Text =BahanBakar;
        txtUkuranBanSumbuI.Value =Convert.ToDecimal(UkuranBanSumbuI);
        txtUkuranBanSumbuII.Value =Convert.ToDecimal(UkuranBanSumbuII);
        txtUkuranBanSumbuIII.Value =Convert.ToDecimal(UkuranBanSumbuIII);
        txtUkuranBanSumbuIV.Value =Convert.ToDecimal(UkuranBanSumbuIV);
        txtKekuatanRancanganSumbuI.Value =Convert.ToDecimal(KekuatanRancanganSumbuI);
        txtKekuatanRancanganSumbuII.Value =Convert.ToDecimal(KekuatanRancanganSumbuII);
        txtKekuatanRancanganSumbuIII.Value =Convert.ToDecimal(KekuatanRancanganSumbuIII);
        txtKekuatanRancanganSumbuIV.Value =Convert.ToDecimal(KekuatanRancanganSumbuIV);
        txtJBBatauJBKB.Value =Convert.ToDecimal(JBBatauJBKB);
        txtBeratKosong.Value =Convert.ToDecimal(BeratKosong);
        txtJBIatauJBKI.Value =Convert.ToDecimal(JBIatauJBKI);
        txtDayaAngkutKg.Value =Convert.ToDecimal(DayaAngkutKg);
        txtDayaAngkutOrang.Value =Convert.ToInt32(DayaAngkutOrang);
        txtDayaAngkutBarang.Value =Convert.ToDecimal(DayaAngkutBarang);

        txtKelasJalanTerendah.Text =KelasJalanTerendah;
        txtBerdasarkan.Text =Berdasarkan;

        string _temp = TglTtd;
        if (_temp.EndsWith(":"))
            _temp += "00 ";
        else
            _temp += ":00 ";
        dtTglTtd.Value = Convert.ToDateTime(_temp);

        txtTempatTtd.Text=TempatTtd;
        txtNamaPejabat.Text =NamaPejabat;
        txtNIPPejabat.Text =NIPPejabat;
        //
        MessageBox.Show("Selesai dibaca dari kartu !");
        RefreshForm(Nomor);
        _ACR.WaitAMinute();
    }
    Timer1.Start();
}

private void RefreshForm(string nomor)
{
    _db = new Database.DatabaseReg();
    _con = _db.Connection;
    if (_con.State == ConnectionState.Open)
        _con.Close ();
    _da = _db.GetSqlDataAdapter ("sp_UJITIPE",CommandType.StoredProcedure );
    //
    _da.SelectCommand.Parameters.Add ("@Nomor",SqlDbType.VarChar).Value= nomor;
    _da.SelectCommand.Parameters.Add ("@Perusahaan",SqlDbType.VarChar ).Value= "" ;
    _da.SelectCommand.Parameters.Add ("@Merek",SqlDbType.VarChar ).Value= "" ;
    _da.SelectCommand.Parameters.Add ("@Tipe",SqlDbType.VarChar ).Value= "" ;
    _da.SelectCommand.Parameters.Add ("@Jenis",SqlDbType.VarChar).Value= "" ;
    _da.SelectCommand.Parameters.Add ("@Peruntukan",SqlDbType.VarChar).Value= "" ;
    _da.SelectCommand.Parameters.Add ("@Varian",SqlDbType.VarChar).Value= "" ;
    _da.SelectCommand.Parameters.Add ("@KendaraanDiuji",SqlDbType.VarChar).Value= "" ;
    _da.SelectCommand.Parameters.Add ("@NomorRangka",SqlDbType.VarChar).Value= "" ;
    _da.SelectCommand.Parameters.Add ("@NomorMotorPenggerak",SqlDbType.VarChar).Valu e= "" ;
    _da.SelectCommand.Parameters.Add ("@PenanggungJawabPerusahaan",SqlDbType.VarChar).V alue= "" ;
    _da.SelectCommand.Parameters.Add ("@TglTtd",SqlDbType.DateTime ).Value= Convert.DBNull;
    _da.SelectCommand.Parameters.Add ("@TempatTtd",SqlDbType.VarChar).Value= "" ;
    _da.SelectCommand.Parameters.Add ("@NamaPejabat",SqlDbType.VarChar).Value= "" ;
    _da.SelectCommand.Parameters.Add ("@NIPPejabat",SqlDbType.VarChar).Value= "" ;
    _da.SelectCommand.Parameters.Add ("@KelasJalanTerendah",SqlDbType.VarChar).Value = "" ;
    _da.SelectCommand.Connection=_con;
    _con.Open ();
    _dt = new DataTable("UJITIPE");
    _da.Fill(_dt);
    _con.Close ();
    _da = null;
    //BindCtrls();
    BindCtrlsImageOnly();
}
private void DisposeObjectReader()
{
    Timer1.Stop();
    _ACR.NAR(Timer1);
    _ACR.NAR(_ACR);
}




 


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
device DLL programming in client side programming hendyhanusin ASP.NET 2.0 Professional 1 March 21st, 2007 08:04 AM
How to get Client Computer Name ramuis78 ASP.NET 2.0 Basics 2 March 11th, 2007 11:48 PM
how to get client computer name ramuis78 ASP.NET 1.0 and 1.1 Basics 1 March 11th, 2007 10:21 AM
how to instal font at client computer BurhanKhan Javascript 4 April 28th, 2004 05:48 AM



All times are GMT -4. The time now is 11:40 PM.


Powered by vBulletin®
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
© 2013 John Wiley & Sons, Inc.