Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MS Windows > CHM файлы


Автор: ALXP 20.3.2009, 13:47
немогу найти нигде в нете какие существуют ключи которые можно прописать после названия файла
например ИМЯ.CHM -параметр1 -параметр2

Мне хочется например открыть файл, но чтобы первым загрузился другой топик(страница), а не начальная(первая) страница.

Помогите пожалуйста. уже долго  smile вот так делаю, скоро со мной произойдет  smile  smile 

Автор: 586 21.3.2009, 06:11
У каждого объекта в chm файле есть адрес. Его можно узнать во время просмотра справки, кликнув правой кнопкой мыши и выбрав в меню пункт "Свойства".
Пример:
Код
Командная строка:
hh.exe C:\WINDOWS\Help\taskmgr.chm::/taskman_change_view_options.htm

Диалог "выполнить" или строка адреса Internet Explorer:
ms-its:C:\WINDOWS\Help\taskmgr.chm::/taskman_change_view_options.htm

Автор: ALXP 23.3.2009, 10:37
586 огромное вам спасибо

Я пишу под билдер софт. К сожалению он понимает только старые hlp файлы. И то очень коряво.
Пришлось пользоваться функцией ShellExecuteA

это для тех кто незнает как пользоваться
Этот код выполняется в событии KeyDown или KeyPress формы или любого компонента который имеет такое событие
Код

if(Key == 112)//F1 key
        ShellExecuteA(NULL,"open",
        "hh.exe",
        "C:\\111\\help.shm::\/setupandsetings.htm#_ustanovka",
        NULL,SW_SHOWNORMAL);

C:\\111\\help.shm - и так ясно что это. можно получить полный путь к директории вашего exe файла вот так

Код

char strExePath[ MAX_PATH ];
    GetModuleFileNameA( NULL, strExePath, MAX_PATH );


Чтобы получить просто директорию 
Код

ExtractFileDir( AnsiString(strExePath) ) 


setupandsetings.htm - имя страницы для отображения в хелпе
_ustanovka - метка(якорь) на этой странице

Автор: 586 23.3.2009, 17:19
Если тебя интересует программный путь решения, то почитай это: 
http://msdn.microsoft.com/en-us/library/ms670080(VS.85).aspx
http://msdn.microsoft.com/en-us/library/ms644704(VS.85).aspx
http://msdn.microsoft.com/en-us/library/ms670169(VS.85).aspx

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)