Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Βοήθεια σχετικά με συντόμευση εφαρμογής

Îåêßíçóå áðü ôï ìÝëïò Αλέξανδρος Δημητρίου. Τελευταία δημοσίευση από το μέλος Αλέξανδρος Δημητρίου στις 16-11-2007, 19:18. Υπάρχουν 4 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  13-11-2007, 21:32 37301

    Βοήθεια σχετικά με συντόμευση εφαρμογής

    Παιδιά καλησπέρα και πάλι!

    Επιτέλους μετά από πολύ κόπο (τελειώσαμε μαζί) την εφαρμογή που έφτιαχνά από τον Απρίλιο του 2007.Υπάρχει όμως κάτι ακόμα το οποίο δε μπορώ να εφαρμόσω και θέλω τη βοηθειά σας για ακόμη μία φορά!

    Η εφαρμογή λοιπόν είναι γραμμένη σε VB (Windwos Application) χρησιμοποιώντας Visual Studio 2005 και Sql Server 2005.

    Αυτό που θέλω να κάνω είναι να εγκαταστήσω την εφαρμογή μου στον server και έπειτα με συντομέυσεις στα τερματικά μου να εκτελώ την εφαρμογή.Το έχω κάνει και παίρνω μήνυμα λάθους το οποίο λέει ότι δεν επιτρέπονται οι απομακρυσμένες συνδέσεις στην εφαρμογή.

    Η συγκεκριμένη υλοποίηση είναι σημαντική για μένα διότι όταν θα γίνεται Update στην εφαρμογή δεν θα πρέπει να ενημερωθούν όλα τα τερματικά παρα μόνο ο server ο οποίος θα περιέχει τον φάκελο της εφαρμογής.

    Παιδιά η βοηθειά σας είναι σημαντική.

    Παίρνω την εξής ανάλυση σφάλματος:

    Ανατρέξτε στο τέλος αυτού του μηνύματος για περισσότερες πληροφορίες σχετικά με την κλήση του
    εντοπισμού σφαλμάτων just-in-time (JIT) αντί για αυτό το παράθυρο διαλόγου.

    ************** Κείμενο εξαίρεσης **************
    System.Security.SecurityException: Η αίτηση για το δικαίωμα τύπου 'System.Data.SqlClient.SqlClientPermission, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' απέτυχε.
       σε System.Security.CodeAccessSecurityEngine.Check(Object demand, StackCrawlMark& stackMark, Boolean isPermSet)
       σε System.Security.PermissionSet.Demand()
       σε System.Data.Common.DbConnectionOptions.DemandPermission()
       σε System.Data.SqlClient.SqlConnection.PermissionDemand()
       σε System.Data.SqlClient.SqlConnectionFactory.PermissionDemand(DbConnection outerConnection)
       σε System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
       σε System.Data.SqlClient.SqlConnection.Open()
       σε IMS_Video_Club_Management.Mdl_SqlCommands.sconnection()
       σε IMS_Video_Club_Management.Mdl_SqlCommands.username()
       σε IMS_Video_Club_Management.Frm_MainMenu.Frm_MainMenu_Load(Object sender, EventArgs e)
       σε System.Windows.Forms.Form.OnLoad(EventArgs e)
       σε System.Windows.Forms.Form.OnCreateControl()
       σε System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
       σε System.Windows.Forms.Control.CreateControl()
       σε System.Windows.Forms.Control.WmShowWindow(Message& m)
       σε System.Windows.Forms.Control.WndProc(Message& m)
       σε System.Windows.Forms.ScrollableControl.WndProc(Message& m)
       σε System.Windows.Forms.ContainerControl.WndProc(Message& m)
       σε System.Windows.Forms.Form.WmShowWindow(Message& m)
       σε System.Windows.Forms.Form.WndProc(Message& m)
       σε System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
       σε System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
       σε System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
    Η ενέργεια που απέτυχε ήταν:
    Demand
    Ο τύπος του πρώτου δικαιώματος που απέτυχε ήταν:
    System.Data.SqlClient.SqlClientPermission
    Η ζώνη της συγκρότησης που απέτυχε ήταν:
    Intranet


    ************** Συγκροτήσεις που έχουν φορτωθεί **************
    mscorlib
        Έκδοση συγκρότησης: 2.0.0.0
        Έκδοση Win32: 2.0.50727.42 (RTM.050727-4200)
        CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
    ----------------------------------------
    IMS Video Club Management
        Έκδοση συγκρότησης: 1.0.0.0
        Έκδοση Win32: 1.0.0.0
        CodeBase: file://Progsrv/E/Debug/IMS%20Video%20Club%20Management.exe
    ----------------------------------------
    Microsoft.VisualBasic
        Έκδοση συγκρότησης: 8.0.0.0
        Έκδοση Win32: 8.0.50727.42 (RTM.050727-4200)
        CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.VisualBasic/8.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
    ----------------------------------------
    System
        Έκδοση συγκρότησης: 2.0.0.0
        Έκδοση Win32: 2.0.50727.42 (RTM.050727-4200)
        CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
    ----------------------------------------
    System.Windows.Forms
        Έκδοση συγκρότησης: 2.0.0.0
        Έκδοση Win32: 2.0.50727.42 (RTM.050727-4200)
        CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
    ----------------------------------------
    System.Drawing
        Έκδοση συγκρότησης: 2.0.0.0
        Έκδοση Win32: 2.0.50727.42 (RTM.050727-4200)
        CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
    ----------------------------------------
    mscorlib.resources
        Έκδοση συγκρότησης: 2.0.0.0
        Έκδοση Win32: 2.0.50727.42 (RTM.050727-4200)
        CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
    ----------------------------------------
    WindowsBase
        Έκδοση συγκρότησης: 3.0.0.0
        Έκδοση Win32: 3.0.6920.0 (vista_rtm_wcp.061020-1904)
        CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/WindowsBase/3.0.0.0__31bf3856ad364e35/WindowsBase.dll
    ----------------------------------------
    System.Configuration
        Έκδοση συγκρότησης: 2.0.0.0
        Έκδοση Win32: 2.0.50727.42 (RTM.050727-4200)
        CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
    ----------------------------------------
    System.Xml
        Έκδοση συγκρότησης: 2.0.0.0
        Έκδοση Win32: 2.0.50727.42 (RTM.050727-4200)
        CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
    ----------------------------------------
    System.Runtime.Remoting
        Έκδοση συγκρότησης: 2.0.0.0
        Έκδοση Win32: 2.0.50727.42 (RTM.050727-4200)
        CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Runtime.Remoting/2.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
    ----------------------------------------
    System.Windows.Forms.resources
        Έκδοση συγκρότησης: 2.0.0.0
        Έκδοση Win32: 2.0.50727.42 (RTM.050727-4200)
        CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_el_b77a5c561934e089/System.Windows.Forms.resources.dll
    ----------------------------------------
    System.Data
        Έκδοση συγκρότησης: 2.0.0.0
        Έκδοση Win32: 2.0.50727.42 (RTM.050727-4200)
        CodeBase: file:///C:/WINDOWS/assembly/GAC_32/System.Data/2.0.0.0__b77a5c561934e089/System.Data.dll
    ----------------------------------------

    ************** Εντοπισμός σφαλμάτων JIT **************
    Για να ενεργοποιήσετε τον εντοπισμό σφαλμάτων just in time (JIT), το αρχείο .config
    για αυτή την εφαρμογή ή για τον υπολογιστή (machine.config)
    πρέπει να έχει για το jitDebugging την τιμή που έχει οριστεί στην ενότητα system.windows.forms.
    Η εφαρμογή πρέπει επίσης να μεταγλωττιστεί
    με ενεργοποιημένο τον εντοπισμό σφαλμάτων.

    Για παράδειγμα:

    <configuration>
        <system.windows.forms jitDebugging="true" />
    </configuration>

    Όταν είναι ενεργοποιημένος ο εντοπισμός σφαλμάτων JIT, οποιαδήποτε εξαίρεση
    που δεν είναι δυνατό να αντιμετωπιστεί θα στέλνεται στο πρόγραμμα εντοπισμού σφαλμάτων JIT που είναι καταχωρημένο στον υπολογιστή
    αντί να αντιμετωπίζεται μέσω αυτού του παραθύρου διαλόγου.

    Ευχαριστώ πολύ εκ των προτέρων!!


    Αυτοί που ζουν γενναίοι είναι ενάρετοι,κάνουν ένδοξες πράξεις και πέθαινουν αιώνια ξακουστοί....
    Μ.Αλέξανδρος...IV Crusade...
    Δημοσίευση στην κατηγορία:
  •  14-11-2007, 23:44 37334 σε απάντηση της 37301

    Απ: Βοήθεια σχετικά με συντόμευση εφαρμογής

    Οι .NET εφαρμογές που εκτελούνται από network share, είτε αυτό είναι mapped είτε όχι, εκτελούνται στο Local Intranet security zone, το οποίο έχει περιορισμένα δικαιώματα σε σχέση με το code access security. Σε απλά ελληνικά, μια τέτοια εφαρμογή μπορεί να κάνει περιορισμένα πράγματα, όπως π.χ. δεν μπορεί να καλέσει unmanaged κώδικα, δεν έχει πλήρη πρόσβαση στο reflection API κλπ. Για να εκτελεστεί μια εφαρμογή από το δίκτυο με τα ίδια δικαιώματα σαν να ήταν εγκατεστημένη τοπικά, πρέπει σε κάθε υπολογιστή να προσθέσεις το path της εφαρμογής σου στο My_Computer_Zone με το .NET 2.0 Framework Configuration που θα βρεις στα Administrative Tools.

    Ένας πιο απλός τρόπος να παρακάμψεις τα προβλήματα με το security, είναι να κάνεις την εφαρμογή σου σαν click once application, στην οποία τα workstations θα έχουν πρόσβαση μέσω ενός URL στο server αλλά θα εγκαθίσταται τοπικά. Περισσότερα για αυτό μπορείς να βρεις εδώ.


    Νατάσα Μανουσοπούλου
  •  15-11-2007, 22:41 37359 σε απάντηση της 37334

    Απ: Βοήθεια σχετικά με συντόμευση εφαρμογής

    (πρέπει σε κάθε υπολογιστή να προσθέσεις το path της εφαρμογής σου στο My_Computer_Zone με το .NET 2.0 Framework Configuration που θα βρεις στα Administrative Tools.)

    Το έκανα.Δούλεψε! Σε ευχαριστώ παρα πολύ!

    Ρύθμισα το security του intranet zone σε full trusted και έπαιξε.Λες να έχω κάποιο άλλο πρόβλημα?Κινδυνέυω από κάτι?


    Αυτοί που ζουν γενναίοι είναι ενάρετοι,κάνουν ένδοξες πράξεις και πέθαινουν αιώνια ξακουστοί....
    Μ.Αλέξανδρος...IV Crusade...
  •  16-11-2007, 07:43 37368 σε απάντηση της 37359

    Απ: Βοήθεια σχετικά με συντόμευση εφαρμογής

    Όταν δίνεις full trust στο intranet zone, δίνεις τη δυνατότητα να εκτελεστεί οποιαδήποτε εφαρμογή από αυτή τη ζώνη σαν να ήταν εγκατεστημένη στον υπολογιστή τοπικά. Αυτό, και ανάλογα με το τοπικό δίκτυο που βρίσκεσαι, μπορεί να αποτελεί ρίσκο από την άποψη της ασφάλειας. Για να είσαι πιο εξασφαλισμένος, αφήνεις το intranet zone στο medium trust που ήταν και προσθέτεις ένα code group με το path της εφαρμογής σου είτε στο my computer zone είτε σε ένα νέο zone που θα φτιάξεις ειδικά γι' αυτό.

    Μια επιπλέον προσέγγιση είναι να κάνεις sign όλες τις assemblies της εφαρμογής σου με το ίδιο private key και να βάλεις αυτό το key σαν συνθήκη στο code group.


    Νατάσα Μανουσοπούλου
  •  16-11-2007, 19:18 37388 σε απάντηση της 37368

    Απ: Βοήθεια σχετικά με συντόμευση εφαρμογής

    "Μια επιπλέον προσέγγιση είναι να κάνεις sign όλες τις assemblies της εφαρμογής σου με το ίδιο private key και να βάλεις αυτό το key σαν συνθήκη στο code group"

    Αυτό για να πώ την αλήθεια με μπέρδεψε λίγο.Θα προσπαθήσω όμως την πρώτη σου πρόταση.Δε βρίσκω κάπου το my computer zone μήπως αναφέρεται κάπως αλλιώς?

    Ερώτηση:Που χρειάζεται η προστασία στο τοπικό μου δίκτυο?

    Τι κίνδυνοι διατρέχουν τοπικα ώστε να υφίσταται προστασία?

     

     

    Ευχαριστώ παρα πολύ

     


    Αυτοί που ζουν γενναίοι είναι ενάρετοι,κάνουν ένδοξες πράξεις και πέθαινουν αιώνια ξακουστοί....
    Μ.Αλέξανδρος...IV Crusade...
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems