Domanda

  

Eventuali duplicati:
   Tipo di file di associazione con l'applicazione (C #)

Sto scrivendo un'applicazione C # Windows per visualizzare e modificare i file '.build' (script Nant). Vorrei che l'utente sia in grado di fare clic destro su un file .build in Windows Explorer e selezionare l'opzione 'Apri con>' opzione per consentire il file da modificare nella mia app.

Che cosa significa il mio programma necessità di sostenere in modo da lavorare con questo meccanismo? Che cosa potrebbe il mio programma bisogno di fare per Windows per abilitare il supporto menu di contesto?

Mi chiedevo se qualcuno mi potrebbe punto nella direzione di un buon articolo / tutorial su questo argomento.

È stato utile?

Soluzione

Il comando Apri con appena passa il percorso del file come primo argomento per l'applicazione in modo tutto quello che dovete fare è

public static void Main(string[] args)
{
    if(args[0] != null)
    {
       //args[0] contans a path to the file do whatever you need to do to display it
    }
    else
    {
       //Start normally
    }
}

Per automaticly mettere il programma a cielo aperto con la lista è necessario aggiungere alcune chiavi reg in HKEY_CLASSES_ROOT\YOUR_EXT\. Ecco una risposta così dire come farlo

o si può solo aggiungere a mano all'aperto con la lista il modo normale.

Altri suggerimenti

Date un'occhiata a questo post sul blog: Shell Extensions - Contesto Menu. Ha codice per un semplice "wrapper" per alcuni ganci COM al menu contestuale di Windows shell. Mettilo nel GAC e quando si fa clic, il menu sarà incluso come un sotto-menu del menu del tasto destro contesto.

Per quanto riguarda strettamente l'utilizzo di "Apri con ..." per rendere l'applicazione presentarsi solo per i file si può aprire, che è un po 'più facile. Questi sono gestiti da Windows utilizzando le chiavi di registro in due posti nel Registro di sistema:

  1. HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ FileExts \ .FileExtension \ OpenWithList (installazione per l'utente corrente)
  2. HKEY_CLASSES_ROOT \ .FileExtension \ OpenWithList (installazione per tutti gli utenti)

Date un'occhiata ad alcuni di quelli esistenti utilizzando regedit, quindi utilizzare la classe di Registro di sistema per creare una nuova chiave per l'estensione che si desidera.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top