| Структуированное хранилище | - SStorage_DS |
SStorage_DS
Краткое описание
Основной модуль построения структуированного хранилища. SStorage_DS является менеджером для всех остальных клиентских модулей
Параметры
Методы
События
Данные
Примечания
Коды ошибок:
0 - Нормальное завершение операций
1 - Неверное имя файла
2 - Файл не является хранилищем
3 - Невозможно открыть хранилище
4 - Хранилище недоступно
5 - Такая папка уже существует
6 - Невозможно создать папку
7 - Недоступен входной файловый поток
8 - Невозможно удалить элемент
9 - Невозможно переименовать элемент в самого себя
10 - Невозможно переименовать элемент
11 - Невозможно скопиовать элемент в самого себя
12 - Невозможно скопировать элемент
13 - Невозможно переслать элемент в самого себя
14 - Невозможно переслать элемент
15 - Невозможно упаковать открытое хранилище
16 - Невозможно упаковать хранилище
17 - Недоступна корневая папка
18 - Невозможно перечислить элементы
19 - Невозможно добавить файл
20 - Невозможно объединитьcя с открытым хранилищем
21 - Невозможно объединить хранилища
0 - Нормальное завершение операций
1 - Неверное имя файла
2 - Файл не является хранилищем
3 - Невозможно открыть хранилище
4 - Хранилище недоступно
5 - Такая папка уже существует
6 - Невозможно создать папку
7 - Недоступен входной файловый поток
8 - Невозможно удалить элемент
9 - Невозможно переименовать элемент в самого себя
10 - Невозможно переименовать элемент
11 - Невозможно скопиовать элемент в самого себя
12 - Невозможно скопировать элемент
13 - Невозможно переслать элемент в самого себя
14 - Невозможно переслать элемент
15 - Невозможно упаковать открытое хранилище
16 - Невозможно упаковать хранилище
17 - Недоступна корневая папка
18 - Невозможно перечислить элементы
19 - Невозможно добавить файл
20 - Невозможно объединитьcя с открытым хранилищем
21 - Невозможно объединить хранилища
Примеры
Пример использования клиент/менеджер модулей SStorage в качестве простого хранилища (файловый "мешок")
Пример использования клиент/менеджер модулей SStorage для чтения структуры WinWord файлов *.doc
Add(MainForm,2953706,63,49)
{
Width=352
Height=296
Caption="Пример SStorage"
Point(onClose)
}
Add(SStorage_DS,6585589,252,119)
{
Name="ssg"
Point(onError)
link(onOpenStorage,7707941:doWork2,[])
}
Add(SDialog,3436997,119,119)
{
Title="Open Dialog"
link(onExecute,16461986:doWork2,[])
}
Add(Button,8402287,63,119)
{
Left=45
Top=220
Caption="Create"
link(onClick,3436997:doExecute,[])
}
Add(Button,14115478,63,175)
{
Left=240
Top=220
Caption="Open"
link(onClick,5134970:doExecute,[])
}
Add(ODialog,5134970,119,175)
{
link(onExecute,16461986:doWork3,[(221,181)])
}
Add(HubEx,16461986,217,119)
{
link(onEvent,6585589:doOpenStorage,[])
}
Add(STG_AddFileTo,2032133,315,238)
{
SStorage_DS="ssg"
link(onAddFileTo,7707941:doWork3,[(361,244)])
link(InPath,10740221:Part,[(321,231)(306,231)(306,287)(195,287)])
link(SrcStream,9313797:Stream,[(328,226)(300,226)(300,280)(258,280)])
}
Add(ODialog,13208921,119,238)
{
link(onExecute,10740221:doPart,[])
}
Add(Button,8084336,63,238)
{
Left=145
Top=220
Caption="Add"
link(onClick,13208921:doExecute,[])
}
Add(HubEx,7707941,357,119)
{
link(onEvent,9595835:doEvent1,[])
}
Add(FileStream,9313797,252,238)
{
link(onLoad,2032133:doAddFileTo,[])
}
Add(STG_ExtractFileFrom,3616426,560,245)
{
SStorage_DS="ssg"
link(onExtractFileFrom,1999512:doEvent1,[])
link(InPath,12633576:Var1,[(566,211)])
}
Add(FilePartElm,10740221,189,238)
{
Point(Part)
link(onPart,9313797:doOpen,[])
}
Add(FileStream,11358944,672,231)
{
Mode=1
AutoCopy=0
Point(doCopyFromStream)
link(FileName,12633576:Var2,[])
}
Add(TreeViewTrain,11892122,560,119)
{
Left=8
Top=10
Width=325
Height=135
Name="tree"
CaptionIndex=3
IDIndex=1
IconIndex=2
Numeric=0
Point(doExpandNode)
Point(doExpand)
link(onClick,6735866:doValue,[])
}
Add(STG_Enumerator,4568045,434,126)
{
SStorage_DS="ssg"
link(onEnumAllElements,390211:doEvent1,[])
}
Add(TVT_AddNode,16055576,560,168)
{
TreeView="tree"
}
Add(Hub,390211,504,126)
{
link(onEvent1,16055576:doAddNode,[(539,132)(539,174)])
link(onEvent2,11892122:doExpand,[])
}
Add(Hub,9595835,392,119)
{
InCount=2
link(onEvent1,11892122:doClear,[])
link(onEvent2,4568045:doEnumAllElements,[])
}
Add(Message,1330003,672,287)
{
Message="ОК"
}
Add(Button,13290962,434,245)
{
Left=145
Top=175
Caption="Extract"
link(onClick,3616426:doExtractFileFrom,[])
}
Add(Hub,1999512,623,245)
{
link(onEvent1,11358944:doCopyFromStream,[])
link(onEvent2,1330003:doMessage,[(655,258)(655,293)])
}
Add(GetDataEx,12633576,672,206)
{
link(Data,6735866:Value4,[])
}
Add(MT_MultiMem,6735866,651,119)
{
Count=4
}
Пример использования клиент/менеджер модулей SStorage для чтения структуры WinWord файлов *.doc
Add(MainForm,2953706,182,217)
{
Width=681
Height=423
}
Add(TreeViewTrain,4303500,364,161)
{
Width=311
Height=389
Align=1
Font=[Arial,8,1,0,204]
WinStyle=2
Name="stgtree"
Layout="grid"
HeightScale=100
ModeSp=3
SizeSp=2
Tooltips=0
IconsManager="icons"
DragDrop=0
CaptionIndex=3
IDIndex=1
IconIndex=2
Numeric=0
Point(NextID)
Point(doExpand)
Point(onDrop)
Point(DropAccept)
Point(onMouseDown)
Point(onDblClick)
Point(doCollapse)
Point(Handle)
Point(doExpandNode)
Point(doSort)
Point(onKeyDown)
Point(doExpandToggle)
link(onClick,6728012:doSeparateMT,[])
}
Add(SStorage_DS,6540375,224,161)
{
Name="sstg"
Point(onError)
link(onOpenStorage,634141:doEvent1,[])
}
Add(STG_Enumerator,6644416,364,217)
{
SStorage_DS="sstg"
Point(onEndEnumAll)
link(onEnumAllElements,10415196:doAddNode,[])
}
Add(TVT_AddNode,10415196,406,217)
{
TreeView="stgtree"
}
Add(Hub,634141,273,161)
{
OutCount=3
link(onEvent1,4303500:doClear,[])
link(onEvent2,6644416:doEnumAllElements,[(301,174)(301,223)])
link(onEvent3,14789619:doData,[(297,181)(297,188)])
}
Add(Button,13267466,140,161)
{
Left=435
Top=365
Width=120
TabOrder=-1
Layout="grid"
Caption="Load"
link(onClick,16479320:doExecute,[])
}
Add(ODialog,16479320,182,161)
{
Filter="Файлы WinWord (*.doc)|*.doc"
Title="Диалог выбора"
FileName=""
link(onExecute,6540375:doOpenStorage,[])
}
Add(MT_MultiData,6728012,406,161)
{
From=1
Count=1
link(onData1,2102961:doItemPath,[])
}
Add(TVT_ItemPath,2102961,448,161)
{
TreeView="stgtree"
link(onItemPath,346256:doExtractFileFrom,[])
}
Add(STG_ExtractFileFrom,346256,490,161)
{
SStorage_DS="sstg"
link(onExtractFileFrom,5132769:doConvert,[])
}
Add(Memo,740361,574,140)
{
Left=315
Width=355
Height=360
Layout="grid"
WidthScale=100
ScrollBars=3
}
Add(DoData,14789619,308,182)
{
Data=Integer(1)
link(onEventData,4303500:doExpandNode,[])
}
Add(Stream2Hex,5132769,532,161)
{
Mode=4
link(onResult,740361:doText,[])
}
Замечания
Обновление элемента: [svn]SStorage_DS.pas[/svn]
BB-code статьи для вставки
Всего комментариев: 0
(комментарии к статье еще не добавлены)