TeamDev Ltd. Home Page

Make use of native Windows libraries from within Java

Buying JNIWrapper, you receive WinPack, a free add-on enabling access to the Windows native API and libraries from Java code. WinPack provides quite a number of integration features to make your Java application look and behave like a Win32 citizen. WinPack requires no extensive knowledge of the Win32 API, nor writing cumbersome wrapper classes for JNI.

Dialog Boxes

With WinPack, you can use familiar Windows dialog boxes and modify window properties in any way possible.

Services, Processes and Event Logs

Using the Services API, you can start, stop or delete a service, display all running services in the list, or change the service options. WinPack lets you monitor and manage system processes, modules, memory and system event logs.

Access to the Registry

With just a snippet of code, you can make your Java application read, write or delete the Windows registry keys and values. Most of the major data types are supported.

Events and File Management

WinPack lets you listen to the file system events. You can also get file attributes, check disk space, or identify the disk media type.

Select Color Dialog

Allow your Microsoft Windows users to choose colors using the full-featured Select Color dialog they are used to.

Open/Save File Dialog

Use the standard Microsoft Windows Open/Save File dialog in your Java program instead of JDK dialogs or JFileChooser to make your program really integrated with the platform.

Select Folder Dialog

No need to confuse users with the Open File dialog when your program actually needs a folder.

The dialog allows opening folders, printers, network locations, etc.

Window Decorations

Enhance your application using the WinPack Window Decorator functions with:
  • Custom-shaped windows,
  • Multi-level window transparency,
  • Palette style windows,
  • Topmost windows.

Custom Shape Window

Creating non-rectangular windows using custom Regions.

You want your program to have an attractive non-rectangular splash screen?

It’s easy! Just choose a picture, specify a transparency color for it and you have an attractive splash screen ready.

Access to the Registry

A small piece of code written by you will allow your software to read, write or delete the registry keys and values. Most of major data types are supported.

Check WinPack Demo to see the Registry viewer implemented using a new RegistryKey class.

Tray Icons & Balloon Tips

This functionality allows you to use various tray icons for putting your Java application into the system tray and display or hide balloon tips for tray icons. You can also display specific options on the pop-up menu and display balloon messages from the tray.

Getting Paths & Icons for User Folders

Store work files in the user folders and then easily find these folders using the ShellFolders functions. You can also see folder icons extracted from Folder settings and converted to Java image by using a new ‘Windows Icon to Java Image’ conversion method.

Getting Windows-like Appearance

You don’t want to spend much time on a custom user interface? Make your Java program look like other programs around. Get the Windows Appearance Schema colors and apply them to your software in just a few clicks.

You can modify the Color Schema. Just click the color and change it using the standard Windows Select Color dialog.

Listening to the File System Events

This functionality allows you to easily monitor changes inside a specified folder. You can watch all files or just specified by the filter. The files will be watched inside the selected folder or in all subfolders recursively.

All kinds of changes are detected:
  • Creating a new file or folder
  • Renaming of files or folders
  • Removal of files or folders
  • File size or contents change
  • Attributes modifications.

Files Management Extensions

With WinPack it is no longer a problem to:
  • Get file attributes
  • Check disk space
  • Identify the disk media type (CD, mapped network drive, local drive, etc.)

Gathering CPU & Memory Information

The Processor Information functionality enables you to get virtually all information about the processor (CPU), including such options as:
  • Processor Vendor
  • Processor Name
  • Family
  • Model
  • Frequency
  • MMX or 3DNow! support flags.

The Memory Information functionality allows reporting the amounts of physical Total and Available memory, etc.

Managing NT Services.

Winpack provides ultimate NT Services management.

Using the provided Services API, you can:
  • Start a service
  • Stop a service
  • Delete a service
  • Create a new service
  • List all services
  • Change service options
  • and more…

Monitoring & Managing Processes

The Processes API included in WinPack gives you the power to monitor and manage all running processes, modules, memory, etc. You will be able to:
  • Create a new process
  • Retrieve the process information such as its ID, status, etc.
  • Terminate the process
  • Wait for the process termination.

Also, the Processes API includes the following monitoring functions, available in the new Snapshot class:
  • List of all running processes and detailed information about each process
  • List of all running modules and detailed information about each module
  • List of all running threads and detailed information about each thread
  • Process heap information
  • and more…

This API also exposes the following useful capabilities:
  • Process environment variables maintenance
  • System environment variables maintenance
  • Current process command line, current process ID, etc.

Various System Hooks

Did you ever need to be aware of all the system events in your program? The Hooks API gives you such an ability!

You can easily install a necessary hook to gain the ultimate control over the system resources from Java programs. The Hooks API represents the following list of available hooks:

KEYBOARD Records input messages posted to the system message queue.
MOUSE Monitors the mouse messages.
JOURNALRECORD Records input messages posted to the system message queue.
GETMESSAGE Monitors messages posted to the message queue.
SHELL Receives notifications useful to shell applications.
CALLWNDPROC Monitors messages before the system sends them to the destination window procedure.
CALLWNDPROCRET Monitors messages after they have been processed by the destination window procedure.
FOREGROUNDIDLE Is called when the application’s foreground thread is about to become idle.
SYSMSGFILTER Monitors messages generated by an input event in a dialog or message boxes, menu or scroll bar.

Dynamic Data Exchange

The DDE API included in WinPack allows a Java application to communicate with native Windows applications via the Dynamic Data Exchange (DDE) protocol.

The API provides both the client-side and server-side implementations. In other words, a Java application can be a DDE server or a DDE client for other applications, or it can be a DDE server and client simultaneously.

Managing & Monitoring the System Event Logs

The System Event Log API included in WinPack allows you to monitor various system event logs and also provides functionality to:
  • Back up or restore the system event logs
  • Post new log messages
  • Clear logs
  • List all event log messages.