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

 

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

This single-instance application could not connect to the original instance

Îåêßíçóå áðü ôï ìÝëïò Παπαδημητρίου Γεώργιος. Τελευταία δημοσίευση από το μέλος Dimitris Papadimitriou στις 16-10-2008, 16:40. Υπάρχουν 3 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  15-10-2008, 10:55 45469

    This single-instance application could not connect to the original instance

    Hello DotNetZone's!

    Κατ' αρχήν στα windows application framework properties το Make single instance application είναι checked

    Το ανωτέρω μήνυμα σφάλματος εμφανίζεται κατά την εκτέλεση της application.restart.

    Τολμώ να πω οτι το σχετικό link της Microsoft http://msdn.microsoft.com/en-us/library/ms184570(VS.80).aspx δεν με βοηθά ιδιαιτέρως.

    Any suggestions?
    Ευχαριστώ

     

  •  15-10-2008, 20:32 45494 σε απάντηση της 45469

    Απ: This single-instance application could not connect to the original instance

    Συμβαίνει πάντα αυτό; Ακόμα π.χ. κι αφού κάνεις restart το pc;

    Όταν συμβεί, το 1ο instance της εφαρμογής σου συνεχίζει να δουλεύει;

    Όταν ο χρήστης πάει να ανοίξει ένα 2ο instance αυτό "ειδοποιεί" το 1ο (περνώντας του και τις command line παραμέτρους του) και κλείνει. Το 1ο απλά βγαίνει στο προσκήνιο και εκτελείται επίσης και το StartupNextInstance event του. Το μήνυμα που παίρνεις είναι ότι αυτή η επικοινωνία μεταξύ των δυο instances αποτυγχάνει. Το γιατί, το βλέπεις στο λινκ που δίνεις, το οποίο όντως δεν είναι πολύ λεπτομερές. Αυτό το "The application does not have permissions to create kernel objects" να σου πω τι αλήθεια δεν μου είναι και πολύ κατανοητό!


    Dimitris Papadimitriou
    Software Development Professional
    dotNETZone.gr News

    Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Διαβάστε επίσης τους όρους χρήσης.
  •  16-10-2008, 16:24 45505 σε απάντηση της 45494

    Απ: This single-instance application could not connect to the original instance

    Με ή χωρίς restart to PC το ανωτέρω συμβαίνει τη στιγμή που ξεκινά το δεύτερο instance της εφαρμογής και ενώ έχει κλείσει ήδη το πρώτο.

    Googlοντας βρήκα λύσεις του "τύπου"... το οποίο δεν "παίζει"...

    1.    'Written by Margus Matsepp aka M2s87
    2.    Sub Restart(ByVal program As String)
    3.         For Each proc As Process In Process.GetProcesses
    4.             If proc.ProcessName = program Then proc.Kill()
    5.         Next
    6.         Process.Start(program)
    7.    End Sub

    Επιπλέον λύσεις όπως δημιουργίας επιπλέον εφαρμογής Restart την οποία θα καλεί το πρόγραμμα .... το οποίο επίσης δεν παίζει...

    Restart.exe:
    Form_Load()
    Call Shell(<EXENAME>,1)
    End
    End Sub

    Main Program:
    Cmd1_Click()
    Call Shell(App.Path & "\Restart.exe", 1)
    End
    End Sub

    Μήπως θα έπρεπε τελικά να ρωτήσω πως κάνουμε restart μια single instance appplication?
    Εναλλακτικά, αυτό το "Restart the original instance of the application." πως γίνεται?

     

     

  •  16-10-2008, 16:40 45507 σε απάντηση της 45505

    Απ: This single-instance application could not connect to the original instance

    Γίνεται όπως το κάνεις. Δοκίμασε να κάνεις μια νέα windows application. Απλά κάνε New Project, τσέκαρε το single-instance application και κάνε build. Τίποτα άλλο. Δουλεύει; Λογικά ναι.

    Λες ότι αυτό συμβαίνει αφού κλείσεις ένα instance. Είσαι σίγουρος ότι η εφαρμογή σου κλείνει σωστά; Μήπως μένει τίποτα ανοιχτό στον task manager;


    Dimitris Papadimitriou
    Software Development Professional
    dotNETZone.gr News

    Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Διαβάστε επίσης τους όρους χρήσης.
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems