---
title: "Интерфейс IUserMetadataManager"
type: interface
api: [api7]
tags: [interface, api7, iusermetadatamanager]
sources:
  - iusermetadatamanager.html
---

*API интерфейсов. Версия 7 > Документ  > Хранилища *


## Интерфейс IUserMetadataManager

Менеджер пользовательских метаданных.
Иерархия:
IDispatch
IUserMetadataManager
Интерфейс можно получить методом QueryInterface у интерфейса IKompasDocument


## AddFile - Добавить файл в хранилище

Синтаксис Automation:
```
BOOL AddFile( BSTR ApplicationIID, BSTR SrcFileName, BSTR DestFileName, BOOL AllowReplacement, BOOL Compress );
```
Синтаксис COM:
```
HRESULT AddFile( BSTR ApplicationIID, BSTR SrcFileName, BSTR DestFileName, BOOL AllowReplacement, BOOL Compress, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успеха,
FALSE    - в случае неудачи.
Входные параметры:
ApplicationIID    - GUID приложения,
SrcFileName    - имя файла в хранилище,
DestFileName    - имя файла на диске,
AllowReplacement    - перезаписывать,
Compress    - добавить со сжатием.
```


## CreateStorage - Создать хранилище файлов приложения

Синтаксис Automation:
```
BOOL CreateStorage( BSTR ApplicationIID, BSTR ApplicationDescription, BSTR Version );
```
Синтаксис COM:
```
HRESULT CreateStorage( BSTR ApplicationIID, BSTR ApplicationDescription, BSTR Version, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успеха,
FALSE    - в случае неудачи.
Входные параметры:
ApplicationIID    - GUID приложения,
ApplicationDescription    - имя приложения,
DestFileName    - версия хранилища.
```


## DeleteFile - Удалить файл из хранилища

Синтаксис Automation:
```
BOOL DeleteFile( BSTR ApplicationIID, BSTR StorageFileName );
```
Синтаксис COM:
```
HRESULT DeleteFile( BSTR ApplicationIID, BSTR StorageFileName, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успеха,
FALSE    - в случае неудачи.
Входные параметры:
ApplicationIID    - GUID приложения,
StorageFileName    - имя удаляемого файла.
```


## DeleteStorage - Удалить хранилище файлов приложения

Синтаксис Automation:
```
BOOL DeleteStorage( BSTR ApplicationIID );
```
Синтаксис COM:
```
HRESULT DeleteStorage( BSTR ApplicationIID, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успеха,
FALSE    - в случае неудачи.
Входные параметры:
ApplicationIID    - GUID приложения.
```


## ExistStorage - Проверить наличие хранилища данных приложения

Синтаксис Automation:
```
BOOL ExistStorage( BSTR ApplicationIID );
```
Синтаксис COM:
```
HRESULT ExistStorage( BSTR ApplicationIID, BOOL * Result );
Возвращаемое значение:
TRUE    - хранилище существует,
FALSE    - хранилище не существует.
Входные параметры:
ApplicationIID    - GUID приложения.
```


## ExtractFile - Извлечь файл из хранилища

Синтаксис Automation:
```
BOOL ExtractFile( BSTR ApplicationIID, BSTR SrcFileName, BSTR DestFileName, BOOL AllowReplacement );
```
Синтаксис COM:
```
HRESULT ExtractFile( BSTR ApplicationIID, BSTR SrcFileName, BSTR DestFileName, BOOL AllowReplacement, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успеха,
FALSE    - в случае неудачи.
Входные параметры:
ApplicationIID    - GUID приложения,
SrcFileName    - имя файла в хранилище,
DestFileName    - имя файла на диске,
AllowReplacement    - перезаписывать.
```


## GetAllFilenames - Получить список файлов приложения

Синтаксис Automation:
```
VARIANT GetAllFilenames( BSTR ApplicationIID );
```
Синтаксис COM:
```
HRESULT GetAllFilenames( BSTR ApplicationIID, VARIANT * Result );
Возвращаемое значение:
- массив VT_ARRAY    VT_BSTR имен файлов в хранилище.
Входные параметры:
ApplicationIID    - GUID приложения.
```


## IsExistFile - Проверить наличие файла в хранилище

Синтаксис Automation:
```
BOOL IsExistFile( BSTR ApplicationIID, BSTR StorageFileName );
```
Синтаксис COM:
```
HRESULT IsExistFile( BSTR ApplicationIID, BSTR StorageFileName, BOOL * Result );
Возвращаемое значение:
TRUE    - файл существует,
FALSE    - файл не существует.
Входные параметры:
ApplicationIID    - GUID приложения,
StorageFileName    - имя удаляемого файла.
```


## StorageInfo - Получить данные из StorageInfo

Тип данных: BSTR
Синтаксис Automation:
```
StorageInfo = Object.StorageInfo(ApplicationIID, ParameterName )    Получить свойство (* )
Object.StorageInfo( ApplicationIID, ParameterName ) = Visible    Установить свойство (* )
StorageInfo= Object.GetStorageInfo( ApplicationIID, ParameterName )    Получить свойство (**)
Object.SetStorageInfo( ApplicationIID, ParameterName, StorageInfo )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_StorageInfo( ApplicationIID, ParameterName, &StorageInfo)    Получить свойство
Object.put_StorageInfo( ApplicationIID, ParameterName, StorageInfo )    Установить свойство
Входные параметры:
BSTR ApplicationIID    - GUID приложения,
BSTR ParameterName    - имя параметр.
```
Примечание:
Свойство позволяет устанавливать и получать имя или версию хранилища:
•для получения имени ParameterName - "storageInfo.appName",
•для получения версии - "storageInfo.appVersion".
