Skip to content
/ mHelp Public
forked from STUDIO-Artaban/mHelp

Windows SDK that easily includes a dynamic help and a macros system to your applications.

License

Notifications You must be signed in to change notification settings

wyrover/mHelp

 
 

Repository files navigation

mHelp is a Windows SDK that easily includes to your applications a dynamic help and an evolutive macros system.

This project, previously called DynHelp SDK, started during the 1999 year and is based on a simple concept: everything a user can do on the UI of an application can be done programmatically.

DynHelp image

This SDK comes in the form of a DLL that exports two common functions:

  • mHelpInit
    Called when the main window of your application is activated.
  • mHelpOpen
    Called at a menu or button activation from the main window of your application to open the mHelp window.

    DynHelp UI

Its operating principle is related to the UI management under Windows via a message loop. Indeed, by using the code line below it is possible to redirect this message loop in order to catch every events generated by the user when he acts on the UI (see mHelp.cpp at line 148).

MainCell=new CWndCell(hNewWnd,SetWindowLongPtr(hNewWnd,GWLP_WNDPROC,NewProc));

Like this, during a macro creation, it is possible to identify on which UI control the user has acted, and to save it into a file. File that will be read in order to reproduce what the user has done, when a macro is launched.

As you understood, the mHelp SDK depends on the knowledge of UI controls your application contains. It is the reason why in 2012 the SDK has been updated to extract all the management of these controls, from the mHelp DLL to external DLLs.

See the mHelp(DynHelp) web site and its documentation.

mHelp.sln (description)

  • JmHelp project contains the mHelp JNI declaration for Java applications.
    Dependency: mHelp.
  • mHelp project contains the mHelp core.
    Dependencies: mHpCtrl, mHpPak.
  • mHpCrypt project contains a console application that crypts .mhf files (mHelp files).
    Dependencies: mHpPak.
  • mHpUncrypt project contains a console application that uncrypts .mhf files (mHelp files).
    Dependencies: mHpPak.
  • mHpCtrl project contains the management of UI controls.
    Dependency: strlib, mHpPak, mHpCtrlMgmt.
  • mHpCtrlMgmt project contains the mHelp interface for controls management.
  • mHpDotNetCtrl project contains the mHelp interface for .NET controls management.
  • mHpPak project contains mHelp tools.
    Dependency: strlib.
  • mHpUncrypt project contains a console application that uncrypts .mhf files (mHelp files).
    Dependencies: mHpPak.
  • mHpWebClient project contains the mHelp declaration for applications using web browser as UI.
  • mHpWPFCtrl project contains the mHelp interface for WPF controls.
  • strlib project contains a string definition (CStrlib class)

mHpQt.sln (description)

  • mHpQtCtrlMgmt project contains the mHelp interface for Qt controls management.
    Dependencies: QtmHpCtrl.
  • QtmHpCtrl project contains the mHelp interface for Qt controls.

Controls/mHpCtrls.sln (description)

  • mHpDotNetButton project contains the .NET button management for mHelp
    Dependency: mHpDotNetCtrl.
  • mHpDotNetCheckBox project contains the .NET checkbox management for mHelp
    Dependency: mHpDotNetCtrl.
  • mHpWin32Button project contains the Win32 button management for mHelp
    Dependency: mHpCtrlMgmt.
  • mHpWin32Slider project contains the Win32 slider management for mHelp
    Dependency: mHpCtrlMgmt.
  • mHpWPFButton project contains the WPF button management for mHelp
    Dependency: mHpWPFCtrl.
  • mHpWPFCheckBox project contains the WPF checkbox management for mHelp
    Dependency: mHpWPFCtrl.

Controls/mHpQtCtrls.sln (description)

  • mHpQtButton project contains the Qt button management for mHelp
    Dependency: QtmHpCtrl.

Example/mHpExample.sln (description)

  • AppCSHARP project contains a c# application using mHelp.
  • AppVBNET project contains a VB.NET application using mHelp.
  • AppWPF project contains a WPF application using mHelp.
  • WinApp project contains a Win32 application using mHelp.
  • wordpad project contains a MFC application using mHelp.

Example/mHpQtExample.sln (description)

  • AppQt project contains a Qt application using mHelp.
    Dependency: mHelp.

About

Windows SDK that easily includes a dynamic help and a macros system to your applications.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 72.0%
  • Pascal 9.3%
  • C# 8.1%
  • C 5.2%
  • Visual Basic .NET 2.3%
  • Makefile 0.9%
  • Other 2.2%