IVsQueryEditQuerySave2.QuerySaveFiles – metoda (UInt32, Int32, String[], UInt32[], VSQEQS_FILE_ATTRIBUTE_DATA , UInt32)
Upozorní prostředí více souborů jsou uloženy.
Obor názvů: Microsoft.VisualStudio.Shell.Interop
Sestavení: Microsoft.VisualStudio.Shell.Interop (v Microsoft.VisualStudio.Shell.Interop.dll)
Syntaxe
int QuerySaveFiles(
uint rgfQuerySave,
int cFiles,
string[] rgpszMkDocuments,
uint[] rgrgf,
VSQEQS_FILE_ATTRIBUTE_DATA[] rgFileInfo,
out uint pdwQSResult
)
int QuerySaveFiles(
unsigned int rgfQuerySave,
int cFiles,
array<String^>^ rgpszMkDocuments,
array<unsigned int>^ rgrgf,
array<VSQEQS_FILE_ATTRIBUTE_DATA>^ rgFileInfo,
[OutAttribute] unsigned int% pdwQSResult
)
abstract QuerySaveFiles :
rgfQuerySave:uint32 *
cFiles:int *
rgpszMkDocuments:string[] *
rgrgf:uint32[] *
rgFileInfo:VSQEQS_FILE_ATTRIBUTE_DATA[] *
pdwQSResult:uint32 byref -> int
Function QuerySaveFiles (
rgfQuerySave As UInteger,
cFiles As Integer,
rgpszMkDocuments As String(),
rgrgf As UInteger(),
rgFileInfo As VSQEQS_FILE_ATTRIBUTE_DATA(),
<OutAttribute> ByRef pdwQSResult As UInteger
) As Integer
Parametry
- rgfQuerySave
[v] Příznaky jsou aktuálně nepoužité.Volající by měl vždy předat null příznak výchozí, nula.
- cFiles
[v] Počet souborů.
- rgpszMkDocuments
[v] Cesta k souboru na disku.
- rgrgf
[v] Příznaky, jejichž hodnoty jsou převzaty z tagVSQEQSFlags výčtu pro atributy platný soubor.Výchozí nastavení = 0.
- rgFileInfo
[v] Z hodnoty VSQEQS_FILE_ATTRIBUTE_DATA struktura obsahující informace o atributech souborů.Can be null; je ignorováno, pokud rgrgf je 0.
- pdwQSResult
[výstup] Ukazatel na hodnotu z tagVSQuerySaveResult výčtu.
Vrácená hodnota
Type: System.Int32
Pokud metoda, vrátí kód chyby.
Pokud uspěje, vrací:
Uložte soubor.Soubor se jen pro čtení v tomto okamžiku.
Má tato metoda nenabízených Uložit jako dialogové okno, ale buď it je tichém režimu vás tak učinit, nebo uživatel má pokyn a vybral uložit jako.Pokud upravujete soubor konvenční přikročíte k volání GetSaveFileNameViaDlg v tomto okamžiku.
Uživatel byl upozorněn, že soubor je jen pro čtení a rozhodl uložit nebo zrušit operaci.Volba závisí BeginQuerySaveBatch / EndQuerySaveBatch metod.
[!POZNÁMKA]
Editor se pokouší uložit více souborů, musíte znát dávkování státu a rozdíl mezi Ne a zrušit.Volání QuerySaveFile metoda pro každého jednotlivého souboru.Vrátí hodnotu prostředí QSR_NoSave_UserCanceled nebo QSR_NoSave_Cancel, a potom uložit je zrušena.Vrátí hodnotu prostředí QSR_NoSave_Continue, pak nebudou uloženy v dávce jednoho souboru, ale můžete pokračovat v ukládání jiných souborů.
Výsledky pro *pdwQSResult jsou:
Pokračovat v ukládání (QSR_SaveOK).
Neukládat (QSR_NoSave_Continue).
Save as (QSR_ForceSaveAs).
Cancel Save (QSR_NoSave_UserCanceled or QSR_NoSave_Cancel).
Poznámky
Podpis COM
Z ivsqueryeditquerysave2.idl
HRESULT QuerySaveFiles(
[in] VSQuerySaveFlags rgfQuerySave,
[in] int cFiles,
[in, size_is(cFiles)] const LPCOLESTR rgpszMkDocuments[],
[in, size_is(cFiles)] const VSQEQSFlags rgrgf[],
[in, size_is(cFiles)] const VSQEQS_FILE_ATTRIBUTE_DATA rgFileInfo[],
[out, retval] VSQuerySaveResult *pdwQSResult
);
Před projektu nebo editor uloží do souboru, musíte tuto metodu volat nebo QuerySaveFile metoda.Soubory projektu jsou tyto hovory automaticky dokončeno řešení, které zná při uložení projektu.Editory IME jsou odpovědné za tyto hovory Pokud editor provádění IVsPersistDocData2 pomocné funkce SaveDocDataToFile metoda.Pokud používáte editor implementuje IVsPersistDocData2 v tímto způsobem, bude volání QuerySaveFile metoda nebo QuerySaveFiles pro je.
Tuto metodu lze volejte před uložením nic na disk.Zpracuje soubory jen pro čtení a změnami způsobem jednotné sdíleném.
Tato metoda potřebovat rezervaci příkaz k zajištění zápisu souboru (například v případě, že soubor byl upraven v paměti).Pro poskytovatele řízení zdroj, který poskytuje možnost "rezervaci místní verze" Toto je bezpečný provoz.Pro poskytovatele řízení zdroje, který není nelze dokončit operaci rezervace bez ztráty dat..V tomto případě Uložit jako je jedinou možností.
Viz také
IVsQueryEditQuerySave2 – rozhraní
Microsoft.VisualStudio.Shell.Interop – obor názvů
Zpátky na začátek