IVsQueryEditQuerySave2::DeclareUnreloadableFile Method (String^, UInt32, array<VSQEQS_FILE_ATTRIBUTE_DATA>^)
States that a file will not be reloaded if it changes on disk
Assembly: Microsoft.VisualStudio.Shell.Interop (in Microsoft.VisualStudio.Shell.Interop.dll)
int DeclareUnreloadableFile( String^ pszMkDocument, unsigned int rgf, array<VSQEQS_FILE_ATTRIBUTE_DATA>^ pFileInfo )
Parameters
- pszMkDocument
-
Type:
System::String^
[in] Path to the file on the disk.
- rgf
-
Type:
System::UInt32
[in] Flags whose values for the file attributes are taken from the tagVSQEQSFlags enumeration. Default = 0.
- pFileInfo
-
Type:
array<Microsoft.VisualStudio.Shell.Interop::VSQEQS_FILE_ATTRIBUTE_DATA>^
[in] Can be NULL. This parameter is ignored if rgf is 0. Values are taken from the VSQEQS_FILE_ATTRIBUTE_DATA structure.
Return Value
Type: System::Int32If the method succeeds, it returns S_OK. If it fails, it returns an error code.
From ivsqueryeditquerysave2.idl
HRESULT DeclareUnreloadableFile( [in] LPCOLESTR pszMkDocument, [in] VSQEQSFlags rgf, [in] const VSQEQS_FILE_ATTRIBUTE_DATA* pFileInfo );
Use of this method is not recommended. Editors should support reload.
This method is called to ensure that the QueryEditFiles, QuerySaveFile, and QuerySaveFiles methods know that a file is not reloadable. It must be called in the following circumstances:
So the project, solution, or editor can ensure that the service knows the file is not reloadable,
-or-
When IsDocDataReloadable specifies that the file is not reloadable by returning false.
If the unreloadable file is being edited, you cannot get the latest version of it. It is possible for files to transition from being reloadable to unreloadable during the lifetime of an editor.