2010-04-22 11 views
7

Desidero aprire i file, che vengono duplicati in Esplora risorse, nella stessa istanza della mia applicazione .Net, ad es. in una nuova scheda. Come posso fare questo?Come aprire i file associati nella stessa istanza di un'applicazione

Per ora ogni file avvia una nuova istanza della mia applicazione. Molti programmi possono aprire file nella stessa istanza, ad esempio, Opera e Notepad ++, quindi c'è sicuramente un modo semplice.

risposta

3

Si può dare un'occhiata a this post che illustra una tecnica che potrebbe essere utilizzata per avere un'applicazione WinForms a istanza singola.

1

Potrebbe essere un modo più semplice per farlo, ma il modo in cui l'ho fatto è che se un'istanza viene avviata con un nome file come parametro allora controlla se ci sono altre istanze e se così passa il nome file quell'istanza e la chiusura stessa verso il basso.

0

Esempio con TCP-socket: TcpListener http://pieterjan.pro/?a=Projecten_csharp_DrawIt.php

  1. inizio sul modulo
  2. collegare TCPClient nella principale della seconda istanza
  3. Invia ActivationArguments attraverso il TCP-collegamento al modulo

Lavori per la più file contemporaneamente pure, e anche per i più file per la prima volta (quando l'applicazione non è ancora iniziato)

I blocchi di codice più importanti sono:

  1. Il costruttore di il MainForm (Hoofdscherm) in cui il server viene avviato e il numero di porta è scritto in un file. Anche il primo file è aperto.
  2. la funzione principale (Program.cs) dove la seconda, terza, ... esempio connette al TcpListener in prima istanza e invia il nome del file tramite la presa
  3. codice

La sorgente è disponibile sul pulsante "Broncode"

Problemi correlati