Модераторы: Snowy, MetalFan, bems, Poseidon

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> trying to open new page in new window 
:(
    Опции темы
muratboy31
Дата 13.2.2010, 01:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



i am trying to open the page in new window but it doesnt load the page, it opens a blank page and an internet explorer window !!!

Код

procedure Tform1.NewWindowEvent(Sender: TObject; var ppDisp: IDispatch; var Cancel: WordBool);
var
s:string;
begin
S:=ExtractFilePath(Application.ExeName)+'Project1.exe';
WinExec(PChar(Format('%s GetActiveEWB.DefaultDispatch',[S])),SW_SHOWNORMAL);
end;


Это сообщение отредактировал(а) muratboy31 - 13.2.2010, 01:41
PM MAIL   Вверх
Mikel
Дата 13.2.2010, 12:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 882
Регистрация: 30.3.2002
Где: Саратов

Репутация: нет
Всего: 2



You should use ShellExecute, WinExec is old function and i had some problems with it in Win7/Vista.
http://www.cryer.co.uk/brian/delphi/howto_openbrowserurl.htm
add ShellAPI to uses.


--------------------
...so remember, it's better to burn out than to fade away
PM MAIL ICQ   Вверх
muratboy31
Дата 13.2.2010, 13:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



i used like that ;

Код

procedure Tform1.NewWindowEvent(Sender: TObject; var ppDisp: IDispatch; var Cancel: WordBool);
begin
ShellExecute(self.WindowHandle,'open',PChar(GetActiveEWB.DefaultDispatch),nil,nil, SW_SHOWNORMAL);
end;


but it opens internet explorer window, i want to open my project window...
PM MAIL   Вверх
Mikel
Дата 13.2.2010, 13:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 882
Регистрация: 30.3.2002
Где: Саратов

Репутация: нет
Всего: 2



Then you should run your application with URL as parameter http://delphi.about.com/od/windowsshellapi...cuteprogram.htm
Exe name of your application is "S:=ExtractFilePath(Application.ExeName);", there is no reason to extract file path and then add exename "S:=ExtractFilePath(Application.ExeName)+'Project1.exe';"

And when program is start (for example, OnShow event), get url from ParamStr() value and open it in embedded webbrowser.


--------------------
...so remember, it's better to burn out than to fade away
PM MAIL ICQ   Вверх
muratboy31
Дата 13.2.2010, 13:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



why it says incompatible types HWND and string  ?

Код

procedure Tform1.NewWindowEvent(Sender: TObject; var ppDisp: IDispatch; var Cancel: WordBool);
var
s:string;
begin
S:=ExtractFilePath(Application.ExeName);
ShellExecute(s,'open',PChar(GetActiveEWB.DefaultDispatch),nil,nil, SW_SHOWNORMAL);
end;

PM MAIL   Вверх
amsoft
Дата 13.2.2010, 16:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 201
Регистрация: 17.10.2009
Где: KZ, Astana

Репутация: 1
Всего: 4



try this
Код

ShellExecute(handle,'open',S,PChar(GetActiveEWB.DefaultDispatch),nil, SW_SHOWNORMAL);

--------------------
"Кто бы ты ни был - не думай о себе слишком"Дельфин
PM   Вверх
muratboy31
Дата 13.2.2010, 16:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



it gives error      incompatible types 'String' and 'PAnsiChar'

Код

var
s:string;
ShellExecute(handle,'open',S,PChar(GetActiveEWB.DefaultDispatch),nil, SW_SHOWNORMAL);

PM MAIL   Вверх
amsoft
Дата 13.2.2010, 17:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 201
Регистрация: 17.10.2009
Где: KZ, Astana

Репутация: 1
Всего: 4



you have to convert string to PChar first
try this:

Код

var
s:string;
ShellExecute(handle,'open',PChar(S),PChar(GetActiveEWB.DefaultDispatch),nil, SW_SHOWNORMAL);

--------------------
"Кто бы ты ни был - не думай о себе слишком"Дельфин
PM   Вверх
muratboy31
Дата 13.2.2010, 17:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



ok no error but it opens the folder(filepath) and also an internet explorer window...
i am trying to open new window with my project...
PM MAIL   Вверх
amsoft
Дата 13.2.2010, 17:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 201
Регистрация: 17.10.2009
Где: KZ, Astana

Репутация: 1
Всего: 4



Код

ShellExecute(handle,'open',PChar(Application.ExeName),PChar(GetActiveEWB.DefaultDispatch),nil, SW_SHOWNORMAL);

--------------------
"Кто бы ты ни был - не думай о себе слишком"Дельфин
PM   Вверх
muratboy31
Дата 13.2.2010, 17:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



this opened my project window with a blank page and also an internet explorer window with the correct link...
PM MAIL   Вверх
amsoft
Дата 13.2.2010, 17:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 201
Регистрация: 17.10.2009
Где: KZ, Astana

Репутация: 1
Всего: 4



you have to use function ParamStr(1) in your application to determine the sended parameter and then do what you want

Это сообщение отредактировал(а) amsoft - 13.2.2010, 17:57
--------------------
"Кто бы ты ни был - не думай о себе слишком"Дельфин
PM   Вверх
muratboy31
Дата 13.2.2010, 18:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



can u please explain me how to use it ? i have no idea !!!
PM MAIL   Вверх
amsoft
Дата 13.2.2010, 18:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 201
Регистрация: 17.10.2009
Где: KZ, Astana

Репутация: 1
Всего: 4



For example:
You need to start application and open some text file

1. start application with parameter (the parameter is name of the text file you want to open):
Код

ShellExecute(handle,'open',<application name>,<parameter>,nil, SW_SHOWNORMAL);

2. in the event OnCreate of main form of your application write the code:
Код

var
S: string;
...
S := ParamStr(1);
Memo1.Lines.LoadFromFile(S);



--------------------
"Кто бы ты ни был - не думай о себе слишком"Дельфин
PM   Вверх
muratboy31
Дата 13.2.2010, 19:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 7.1.2010

Репутация: нет
Всего: нет



ok 1 question,
i use ini file to load the home page anyway on form create and the question is ;
can i use this ini line as parameter ???
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0578 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.