C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
TCppWebBrowser
AndreyAGSoft
  Отправлено: 25.06.2003, 08:12


Ученик-кочегар

Группа: Участник
Сообщений: 14



Как сделать программу с TCppWebBrowser браузером по умолчанию.
Admin
Отправлено: 25.06.2003, 16:41


Владимир

Группа: Администратор
Сообщений: 1190



Наверное Вы хотите, чтобы Ваша программа открывала
по умолчанию файлы с расширением .htm и .html ?

Если это так, то:

CODE

//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
#include <Registry.hpp>
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "SHDocVw_OCX"
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------


void __fastcall TForm1::FormCreate(TObject *Sender)
{
TRegistry *Reg;
AnsiString asFileName;
Reg = NULL;

try {

Reg = new TRegistry;

Reg->RootKey = HKEY_CLASSES_ROOT;
Reg->OpenKey("\\.html", true);
Reg->WriteString("", "MyProg");
Reg->CloseKey();

Reg->RootKey = HKEY_CLASSES_ROOT;
Reg->OpenKey("\\.htm", true);
Reg->WriteString("", "MyProg");
Reg->CloseKey();

Reg->OpenKey("\\MyProg", true);
Reg->WriteString("", "My document");
Reg->CloseKey();

Reg->OpenKey("\\MyProg\\Shell\\Open\\Command", true);
Reg->WriteString("", ParamStr(0) + " \"%1\"");
Reg->CloseKey();

Reg->OpenKey("\\MyProg\\DefaultIcon", true);
Reg->WriteString("", ParamStr(0) + ", 1");
Reg->CloseKey();

Reg->OpenKey("\\.html\\DefaultIcon", true);
Reg->WriteString("", ParamStr(0) + ", 1");
Reg->CloseKey();
}
__finally {
if (Reg != NULL) delete Reg;
}

if (ParamCount > 0)
{
asFileName = ParamStr(1);
if (FileExists(asFileName)){
      // Cpp — это компонент CppWebBrowser
Cpp->Navigate( WideString( asFileName ));
}
else ShowMessage("Расширения зарегистрированы за программой.");
}
}
//---------------------------------------------------------------------------


При первом запуске программы она зарегистриует в Windows
расширения файлов .htm и .html за вашей программой.

Теперь можно или указать в качестве параметра .htm .html файл
или просто открыть любой .html или .htm документ, и откроется
он в вашей программе.

Отредактировано Admin — 26 Jun 2003, 18:02

Вернуться в Вопросы программирования в C++Builder