Возвращает канал memo-файла, соответствующего заданной рабочей области workarea.
FCHAN _MemoChan(int workarea) int workarea; /* Номер рабочей области. */ |
Примечания
Если в указанной рабочей области ни одна база данных не открыта или если в открытой базе данных нет memo-файла, _MemoChan( ) возвращает - 1.
Для получения дополнительной информации о том, как создавать библиотеку API и интегрировать её в Visual FoxPro, смотрите Доступ к API Visual FoxPro.
Пример
В следующем примере извлекается содержимое memo-поля. _MemoChan(-1) возвращает канал memo-файла, относящегося к текущей рабочей области. Возвращенный канал FCHAN используется в качестве аргумента в API-функциях файлового ввода-вывода низкого уровня.
Код Visual FoxPro
![]() | |
---|---|
SET LIBRARY TO MEMOCHAN CREATE TABLE WMemo (MemoField M) APPEND BLANK REPLACE MemoField WITH "Hello, World." ? GETMEMO(@MemoField) |
Код C
![]() | |
---|---|
#include <pro_ext.h> FAR FindMemoEx(ParamBlk FAR *parm) { Locator FAR *memoFldLoc; FCHAN fchMemo; char FAR *memoContents; int memoLen; long loc; if ((fchMemo = _MemoChan(-1)) == -1) { _UserError("_MemoChan() failed"); } memoFldLoc = &parm->p[0].loc; if ((loc = _FindMemo(memoFldLoc)) < 0) { _UserError("_FindMemo() failed"); } if ((memoLen = _MemoSize(memoFldLoc)) < 0) { _UserError("_MemoSize() failed"); } if ((memoContents = _Alloca(memoLen + 1)) == 0) { _Error(182); // "Insufficient memory" } _FSeek(fchMemo, loc, FS_FROMBOF); _FRead(fchMemo, memoContents, memoLen); memoContents[memoLen] = '\0'; _RetChar(memoContents); } FoxInfo myFoxInfo[] = { {"GETMEMO", (FPFI) FindMemoEx, 1, "R"}, }; FoxTable _FoxTable = { (FoxTable FAR *) 0, sizeof(myFoxInfo)/sizeof(FoxInfo), myFoxInfo }; |
Смотрите также
Справочное руководство
Процедура библиотеки API _AllocMemo( )Процедура библиотеки API _DBReplace( )
Процедура библиотеки API _FindMemo( )
Процедура библиотеки API _FOpen( )
Процедура библиотеки API _MemoSize( )
Концепции
Процедуры библиотеки API от A до ZПрочие ресурсы
Доступ к API Visual FoxProПроцедуры библиотеки API по категориям

c Microsoft Corporation. All rights reserved. Microsoft is not reponsible for the contents of the translated help topics.