Форум: "Основная";
Текущий архив: 2002.04.15;
Скачать: [xml.tar.bz2];
ВнизПолучение параметров из Cом объекта. Найти похожие ветки
← →
kostya (2002-04-03 09:50) [0]У меня проблема следующего рода: Написал Com, в Delphi он прекрасно работает, но когда использую его в VBA, то все функции работают нормально, кроме тех, в которых, возвращаемый параметр строка. В макросе вылетает ошибка "клиент отключен от объекта".
← →
Dimka Maslov (2002-04-03 09:56) [1]В Com-объектах, если они исплоьзуются в VBA нельзя использовать строки, как параметры, возвращаемые функцией. Попробуй заменить такие методы интерфейсов следующим образом
было:
function SomeFunc(Params): PChar;
надо:
function SomeFunc(Params; out ResultStr: LPCTSTR): HResult;
← →
Digitman (2002-04-03 09:57) [2]приведи декларацию и реализацию интерфейсного функц.метода, вызов которого из VBA вызывает сию проблему
← →
kostya (2002-04-03 10:27) [3]To Digitman
function TSearchFile.GetFileName(Number_: Integer): WideString;
begin
Result:=FileList.Strings[Number_]
end;
← →
kostya (2002-04-03 11:05) [4]To Dimka Maslov
а что за тип LPCTSTR мне чего то такой не установить :((
← →
Dimka Maslov (2002-04-03 11:13) [5]или можно и out WideString
← →
Dok_3D (2002-04-03 11:38) [6]Можно out OleVariant,
если эта вариантная переменная будет иметь стринговое значение, то VBA ее прекрасно поймет.
← →
Digitman (2002-04-03 12:12) [7]>kostya
никаких WideString ! только - OleVariant будет работать на стыке с VBA.
← →
kostya (2002-04-03 12:46) [8]function Tfindfile.GetNameNew(No: Integer;
out PathFile: WideString): WordBool;
begin
try
PathFile:=FileList.Strings[No];
finally
Result:=True
end;
end;
Работает нормально.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.04.15;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.004 c