Problema Windows Forms
Last post 12-09-2009, 10:47 by geen1. 3 replies.
Sort Posts: Previous Next
  •  01-05-2008, 21:36 17905

    Problema Windows Forms

    Salutare,

    Presupunand ca avem o aplicatie cu 2 ferestre. In prima fereastra avem un buton care in momentul in care este apasat va executa urmatorul cod:

    try {

    using(Form2 f2 = new Form2()) { f2.ShowDialog(); }

     }

    catch(Exception) {

    MessageBox.Show("Error");

     }

     Forma 2 va avea deasemeni un buton care va executa urmatorul cod: throw new Exception();

    Stie cineva din ce motiv .. daca execut aceasta aplicatie simpla in modul debug (F5) totul functioneaza ca la carte ... dar daca rulez in release (CTRL + F5) exceptia nu ajunge in catch si aplicatia crapa?

  •  01-27-2008, 13:52 18252 in reply to 17905

    Re: Problema Windows Forms

    Sorin,

     

    Din pacate nu am reusit sa cream, inca, aici o baza de utilizatori care sa poata produce continut pentru forum. Asa ca e posibil ca problemele tale sa nu isi gasesca aici raspunsul. Iti recomand cu caldura sa incerci sa pui intrebarile tale pe MSDN Forums. Satisfactie garantata.


    Lucian Baciu, Software Engineer, ex-MSP
  •  01-27-2008, 16:59 18253 in reply to 18252

    Re: Problema Windows Forms

     

    Scuze pentru intarzierea cu care raspund. Via Petru Jucovschi, Developer Evangelist la Microsoft Romania. De acord cu Lucian - noi putem aduce aici expertiza dar fie forumurile RONUA (ronua.ro), fie forumuri cum sunt cele de pe MSDN te vor ajuta sa gasesti raspuns mai rapid.

    Presupun ca scenariul descris e o parte din unul mai complex, fiindca problema pe care vrei sa o rezolvi aici este tratarea (corecta) a exceptiilor in Windows Forms, care presupune 2 lucruri:

    -          Sa stii ca daca firul de executie al UI lanseaza o exceptie, aceasta va fi prinsa de handler-ul evenimentului ThreadException, a obiectului Application. Acest eveniment (ThreadException) este foarte important de tratat deoarece Windows Forms va asocia un handler default pentru acest eveniment daca tu nu te vei ocupa de asta (exact ceea ce ti se intampla tie in aplicatia descrisa).

    -          Sa identifici daca exceptiile din interfata ta pot fi lansate si din alte fire de executie decat cel de UI (un fir din Aplication Domain)

     

    Ok, si acum mai in detaliu.

     

    a.       Situatia in care stii sigur ca exceptie vor fi lansate DOAR din firul UI:

    Iti recomand sa citesti:

    -          Application Architecture in Windows Forms 2.0—UI Thread Exceptions

    http://en.csharp-online.net/Application_Architecture_in_Windows_Forms_2.0%E2%80%94UI_Thread_Exceptions

     

    -          Top-level Exception Handling in Windows Forms Applications

    http://richnewman.wordpress.com/2007/04/08/top-level-exception-handling-in-windows-forms-applications-part-1/

     

    b.      Daca mai folosesti in aplicatia ta Windows Forms si alte fire de executie care pot lansa exceptii si care ar putea afecta UI-ul :

    Iti recomand sa citesti:

    -          How to handle unhandled exceptions in Windows Forms

    http://weblogs.asp.net/fmarguerie/articles/403665.aspx

     


    -- todi
  •  12-09-2009, 10:47 28227 in reply to 18253

    MSDN - te scoate din orice belea

    nu cred ca am gasit un HELP mai bine dezvoltat decat MSDN.

     

    --

     Web Site Design

View as RSS news feed in XML
Despre

Student Club este dedicat pasionatilor de tehnologie.

Vei intalni membri sau alumni ai Microsoft Student Partners ce vor contribui cu bloguri, articole, evenimente sau pe forumuri.

Detalii

  • Despre
  • Confidentialitate
  • Termeni si conditii
  • Contact
  • Powered by Community Server
  • Copyright 2007 - 2008 Microsoft
  • envisioned by Equilobe