Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.11.2010, 21:07   #1
StartMis
Форумчанин
 
Регистрация: 21.04.2008
Сообщений: 175
По умолчанию Ошибка Invalid argument

Нашел в сети :
Код:
function Variant2Str(V:OleVariant):string;
var Data:pointer;
S: TMemoryStream;
begin
Data := VarArrayLock(V);
try
S := TMemoryStream.Create;
try
S.Write(Data^, VarArrayHighBound(V, 1) - VarArrayLowBound(V, 1) + 1);
S.Position := 0;
s.SaveToFile('d:\1234.txt');
finally
S.Free;
end;
finally
VarArrayUnlock(V);
end;
end;


procedure TForm1.WebBrowser1BeforeNavigate2(Sender: TObject;
  const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
  Headers: OleVariant; var Cancel: WordBool);
begin
Variant2Str(PostData);
end;
выдает ошибку Invalid argument. что не так? как это исправить?
StartMis вне форума Ответить с цитированием
Старый 23.11.2010, 22:08   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

А чему равно PostData ?
mihali4 вне форума Ответить с цитированием
Старый 23.11.2010, 22:49   #3
ImmortalAlexSan
Участник клуба
 
Аватар для ImmortalAlexSan
 
Регистрация: 13.01.2009
Сообщений: 1,353
По умолчанию

PostData:OleVariant; Просто после запятой ещё одна переменная, а после нее тип. и вообще, если я не ошибаюсь, то как Variant2Str будет работать с (PostData), когда пост дата описан, как возвращаемое значение? Если я не ошибаюсь, то после Var идут возвращаемые значения процедурой. Попробуйте так:
Код:
procedure TForm1.WebBrowser1BeforeNavigate2(Sender: TObject;
  const pDisp: IDispatch; var URL, Flags, TargetFrameName,
  Headers: OleVariant; var Cancel: WordBool);
var
 PostData:OleVariant;
begin
Variant2Str(PostData);
end;
"Тебе то может на меня и насрать, но твои глаза меня обожают!"
ImmortalAlexSan вне форума Ответить с цитированием
Старый 23.11.2010, 23:09   #4
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

При чем тут тип ???
Я спрашиваю, с каким конкретным значением PostData вызывается Variant2Str(), использующая PostData в качестве параметра? Где этот параметр определяется ? Какое значение имеет ?
mihali4 вне форума Ответить с цитированием
Старый 23.11.2010, 23:28   #5
ImmortalAlexSan
Участник клуба
 
Аватар для ImmortalAlexSan
 
Регистрация: 13.01.2009
Сообщений: 1,353
По умолчанию

mihali4, прошу прощения, не понял, но на роль всезнайки тоже не претендовал. =)
"Тебе то может на меня и насрать, но твои глаза меня обожают!"
ImmortalAlexSan вне форума Ответить с цитированием
Старый 23.11.2010, 23:31   #6
StartMis
Форумчанин
 
Регистрация: 21.04.2008
Сообщений: 175
По умолчанию

PostData это данные которые WebBrowser передает серверу при отправке методом POST.
StartMis вне форума Ответить с цитированием
Старый 24.11.2010, 00:02   #7
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Опять двадцать пять...
Вы умеете поставить бряку на строку
Код:
Variant2Str(PostData);
и посмотреть, есть ли там что-нибудь ?
Ведь вы используете событие BeforeNavigate, а не NavigateComplete.
mihali4 вне форума Ответить с цитированием
Старый 24.11.2010, 00:35   #8
StartMis
Форумчанин
 
Регистрация: 21.04.2008
Сообщений: 175
По умолчанию

mihali4 спасибо.все сделал работает.
StartMis вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибка-ORA_01410 invalid rowid yulkas БД в Delphi 3 03.06.2010 20:23
Format '%1 ' invalid or incompatible with argument ImmortalAlexSan Общие вопросы Delphi 19 30.03.2010 21:15
invalid procedure call or argument igorrt Microsoft Office Access 1 03.03.2009 16:35
raised exception class EIdSocketError with message' Socket Error # 10022 Invalid argument eldar Работа с сетью в Delphi 16 08.08.2008 23:49