Aprire editor specifici del progetto

Se un file di elemento aperto da un progetto è intrinsecamente associato all'editor specifico per tale progetto, il progetto deve aprire il file usando un editor specifico del progetto. Il file non può essere delegato al meccanismo dell'IDE per la selezione di un editor. Ad esempio, invece di usare un editor bitmap standard, è possibile usare questa opzione editor specifica del progetto per specificare un editor bitmap specifico che riconosce le informazioni nel file univoco per il progetto.

L'IDE chiama il OpenItem metodo quando determina che un file deve essere aperto da un progetto specifico. Per altre informazioni, vedere Visualizzare i file usando il comando Apri file. Usare le linee guida seguenti per implementare il metodo in modo che il OpenItem progetto apra un file usando un editor specifico del progetto.

Per implementare il metodo OpenItem con un editor specifico del progetto

  1. Chiamare il FindAndLockDocument metodo (RDT_EditLock) per determinare se il file (oggetto dati documento) è già aperto.

    Nota

    Per altre informazioni sui dati dei documenti e sugli oggetti visualizzazione documento, vedere Document data and document view in custom editors.For more information about document data and document view objects, see Document data and document view in custom editors.

  2. Se il file è già aperto, visualizzare nuovamente il file chiamando il IsDocumentOpen metodo e specificando un valore di IDO_ActivateIfOpen per il grfIDO parametro .

    Se il file è aperto e il documento è di proprietà di un progetto diverso dal progetto chiamante, all'utente verrà visualizzato un avviso che indica che l'editor aperto proviene da un altro progetto. Viene quindi visualizzata la finestra del file.

  3. Se il buffer di testo (oggetto dati documento) è già aperto e si desidera allegare un'altra visualizzazione, si è responsabili dell'associazione di tale visualizzazione. L'approccio consigliato per creare un'istanza di una visualizzazione (oggetto visualizzazione documento) dal progetto è la seguente:

    1. Chiamare QueryService sul SLocalRegistry servizio per ottenere un puntatore all'interfaccia ILocalRegistry2 .

    2. Chiamare il CreateInstance metodo per creare un'istanza della classe di visualizzazione documento.

  4. Chiamare il metodo specificando l'oggetto CreateDocumentWindow visualizzazione documento.

    Questo metodo consente di visualizzare l'oggetto visualizzazione documento in una finestra del documento.

  5. Eseguire le chiamate appropriate ai InitNew metodi o Load .

    A questo punto, la vista deve essere completamente inizializzata e pronta per l'apertura.

  6. Chiamare il Show metodo per visualizzare e aprire la visualizzazione.