ورود

View Full Version : ارتباط قسمتهای مختلف نرم افزار به فایل help



ali190
پنج شنبه 04 شهریور 1389, 17:07 عصر
باسلام و آرزوی قبولی طاعات و عبادات تمامی دوستان
من برای نرم افزارم یک فایل help با فرمتchm ساختم
الان تنها استفاده ای که از این فایل راهنما میکنم اینست که این راهنما رو فقط به برنامه ام توسط کلیدهایی path داده ام و فایل راهنما با تمام کلیاتش فقط باز میشه در حالیکه این فایل شامل چندین و چندذ موضوع در زمینه قسمتهای مختلف است
فرض کنید دارید با برنامه word مجموعه آفیس کار میکنید
در هر قسمت از برنامه که مشکل داشتید وقتیکه فایل help را فراخوامنی میکنید فایل help با محوریت آن موضوع خاص یا آن بخش خاص گشوده میشود
من هم میخوام تو برنامه ام یک همچین کاری انجام بدم یعنی در قسمت از برنامه ام اگر کاربر به مشکل برخورد آن موضوع خاص از help برای کاربر گشوده شود در حالیکه کاربر در همان زمان بتواند به کل help برنامه هم دسترسی داشته باشد.
من در زمینه handle و موضوعات وابسته به اون اطلاعات خیلی کمی دارم
امکان داره این مشکل از طریق اون متد برطرف بشه؟
در پیوست یک فایل chm قرار دادم که شامل چهار بخش است
میخواستم دوستان یک فایل نمونه با این راهنما در اختیارم قرار بدند با چهار دکمه که با کلیک بر روی هر دکمه بخش همنام با اون باز بشه (دکمهاول بخش یک ، دکمه دوم بخش دوم و....)
البته من سورس chm هامو هم دارم.
اصلاً ایا این کار با chm قابل انجامه یا نه و برای دستیابی به هدف مد نظرم باید متد ساخت فایلهای راهنمامو عوض کنم؟
ممنون و متشکر

ali190
پنج شنبه 04 شهریور 1389, 23:45 عصر
با سلام
دوستان من در سایت یه سرچ زدم و یک مطلب و نمونه برنامه در مورد این موضوع پیدا کردم
متها مشکل اینجاست که این نمونه با vb.net نوشته شده است
و من نه نتها باvb.net کار نکردم ، بلکه نرم افزار vb.net رو هم ندارم
میشه خواهش کنم با لاهام از این برنامه یه فایل نمونه در vb برام در اینجا قرار بدید
ممنون و متشکر از لطفتون

آدرس :
http://www.barnamenevis.org/forum/showpost.php?p=816897&postcount=1

vbhamed
شنبه 06 شهریور 1389, 05:19 صبح
سلام

براي اين كار بايد موضوع هر صفحه از راهنما رو بدونيد كه اين كار در نرم افزاري كه باهاش فايل chm رو ساختين مشخص ميشه
من براي اين كار از html help workshop استفاده كردم، همونطور كه در عكس مي بينيد راهنماي مربوط به ثبت ويرايش به فايل AddEdit.htm نسبت داده شده و همين فايل كليد اتصال ما هست
براي نمايش اون صفحه از كد زير استفاده مي كنيم

Private Declare Function HtmlHelp Lib "HHCtrl.ocx" Alias "HtmlHelpA" _
(ByVal hWndCaller As Long, _
ByVal pszFile As String, _
ByVal uCommand As Long, _
dwData As Any) As Long

Const HH_DISPLAY_TOPIC As Long = 0
Const HH_HELP_CONTEXT As Long = &HF

Global HelpFileName As String

Public Sub ShowHelp(ByVal Topic As String, Optional hwnd As Long = -1)

On Error Resume Next

HtmlHelp Me.hwnd, "C:\Help.chm"), HH_DISPLAY_TOPIC, ByVal Topic

End Sub

Public Sub cmdHelp_Click()

On Error Resume Next

ShowHelp "Index.htm"

End Sub