Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2007.12.30;
Скачать: [xml.tar.bz2];

Вниз

Возможен ли запуск *.CHM с параметром главы?   Найти похожие ветки 

 
botaniQ   (2007-10-11 10:32) [0]

Доброго всем тем, кто 12 и 13 сентября справляет профессиональный праздник!
Возникла такая проблемка:
Написал программу + написал к ней хелп в формате *.hlp...Но как оказалось, МикроМягкие не умудрились в стандартный пакет Висты запихнуть поддержку этих самых *.hlp....Так вот программу мне надо сдулать с поддержкой той самой висты и чтобы справка работала естеССно.
Подвернулся вариант сделать CHM-справку...но, по ходу дела, В делфи нельзя назначить так называемый Application.HelpFile=exDir+"help.chm";
Хочу сделать через ShellExecute....но ладно бы если мне просто надо было бы запустить help.chm...Мне надо его в некоторых случаях запускать с определенной главы...
Я подумал - Если тот же MsPaint запустить с параметром "- c:\1.bmp" то он его естеССно загрузит.....Так вот... Можно ли запустить *.chm файл с параметром, указывающим так называемый TopicID ??? Типа "help.chm - TopID:Main"...


 
DVM ©   (2007-10-11 10:36) [1]

http://www.soft32.ru/delphi.shtml?topic=files&title=chm_use


 
botaniQ   (2007-10-11 10:52) [2]


> DVM ©   (11.10.07 10:36) [1]
> http://www.soft32.ru/delphi.shtml?topic=files&title=chm_use


А есть ли вариант попроще?....Этот я уже обдумывал :)


 
DVM ©   (2007-10-11 11:09) [3]


> А есть ли вариант попроще?....


unit Unit1;

interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;

type

TForm1 = class(TForm)

Button1: TButton;

Button2: TButton;

procedure FormCreate(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

private

{ Private declarations }

public

// Описание функции "HH"

function HH(Command: Word; Data: Integer; var CallHelp: Boolean): Boolean;

{ Public declarations }

end;

var

Form1: TForm1;

implementation

//========= HTML Help API ===========

const

HH_DISPLAY_TOPIC = $0000;

HH_DISPLAY_TOC = $0001;

HH_CLOSE_ALL = $0012;

function HtmlHelp(hwndCaller: HWND;

pszFile: PChar; uCommand: UINT;

dwData: DWORD): HWND; stdcall;

external "HHCTRL.OCX" name "HtmlHelpA";

//=================================

{$R *.DFM}

// Функция "HH"

function TForm1.HH(Command: Word; Data: Integer; var CallHelp: Boolean):
Boolean;

begin

if (Command = 0) and (Data = 0)

then HtmlHelp(Application.Handle,

PChar(Application.HelpFile),

HH_DISPLAY_TOC, 0);

CallHelp := False;

end;

// При создании формы замена реакции приложения на вызов справки

procedure TForm1.FormCreate(Sender: TObject);

begin

Application.OnHelp := HH;

end;

// Вызов CHM Help

procedure TForm1.Button1Click(Sender: TObject);

var

dummy : Boolean;

begin

Application.HelpFile := "helpname.chm";

HH(0, 0, dummy);

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

// Закрыть все окна, открытые вызывающей программой

HtmlHelp(0, nil, HH_CLOSE_ALL, 0);

end;

end.



 
botaniQ   (2007-10-11 11:15) [4]

Спасибо БОЛЬШОЕ....Скоро испробую....:)


 
Суслик ©   (2007-10-11 12:33) [5]

погугли по  "Helpware Group"

я использую два модуля

hh.pas
hh_funcs.pas

для показа chm справки. пока доволен



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2007.12.30;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.008 c
6-1177316875
Dmitriy_010
2007-04-23 12:27
2007.12.30
Передача данных


1-1191819732
den303_work
2007-10-08 09:02
2007.12.30
Копирование форм


2-1196718370
ProgRAMmer Dimonych
2007-12-04 00:46
2007.12.30
От теории к практике


2-1197006707
Свой
2007-12-07 08:51
2007.12.30
TQuery ответ и регистр букв


15-1196231956
Alexander Panov
2007-11-28 09:39
2007.12.30
Crystal Report Runtime DLL ver.8.x





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский