Win32

IUP - Portable User Interface

Win32 System Driver

This driver was designed for the modern Microsoft Windows in 32 bits or 64 bits (2000/XP/2003/Vista).

DLL

To use DLL, it is necessary to link the application with the IUP.lib and IUPSTUB.lib libraries (for technical reasons, these libraries cannot be unified). Note that IUP.lib is a library specially generated to work with iup.dll, and is usually distributed in the same directory as iup.dll. the IUP DLL depends on the MSVCRT.DLL, that it is already installed in Windows.

For the program to work, IUP.dll must be inside a PATH directory. Usually the program does not need to be relinked when the DLL is updated.

Debug Versions 

While using the debug version, two types of fatal errors can occur:

1) Protection errors: "Unhandled exception: access violation"
2) Assertive errors: "Assertion failed!"

In the second type, a dialog is shown with buttons Abort, Retry and Ignore, as well as a number of information, among which:

+ Name of the font file where the error occurred
+ Line number

The bug-correction process (if it exists) becomes a lot faster when this information is provided. Therefore, if you receive such error, please send this information along in the e-mail.

Tips

COM Initialization

IupOpen calls "CoInitializeEx(NULL, COINIT_APARTMENTTHREADED);", if you need another concurrency model call CoInitializeEx with other options before calling IupOpen. Be aware that some features in some controls require single-thread apartment, and they will stop working, this includes: IupFileDLg when selecting a folder, and IupOle.

InitCommonCtrlEx Linker Error

On Windows a common error occurs: "Cannot find function InitCommonCtrlEx()" This error occurs if you forgot to add the comctl32.lib library to be linked with the program. This library is not usually in the libraries list for the Visual C++, you must add it.

Custom IupFileDlg

To use some cursors and the preview area of IupFileDlg you must include the "iup.rc" file into your makefile. Or include the contents of it into your resource file, you will need also to copy the cursor files.

Windows XP Visual Styles

Windows XP Visual Styles can be enabled using a manifest file. Uncomment the manifest file section in "iup.rc" file or copy it to your own resource file, you will need also to copy the manifest file "iup.manifest".

When using Visual C++ 8 with "iup.manifest", configure the linker properties of your project to do NOT generate a manifest file or the Windows XP Visual Styles won't work.

Black Canvas

The IupGLCanvas does not work when inside an IupFrame, the result is a black canvas with no drawing.