Years later discontinuing GMSO , a GNOME application to query inklevels of various printers, I started rewriting it in Java using Java-Gnome and JNI to interface with native libraries. The project’s home page is hosted at Google (http:/mso.googlecode.com) and the source branches are hosted at Launchpad.
The project currently consists of 3 components
- JInkLevel: Java bindings for libinklevel.
- LibMso: JNI library to detect printers attached to the system. It uses libhd (part of hwinfo by SuSE)
- GMSO 2: The main application
See the homepage for screenshots, downloads and javadoc of the libraries. The source code be browsed at Launchpad. Looking for the future I may be adding additional GUI’s based on the libraries (Java Swing, SWT, QT ….)
02/04/2014 at 2:42 pm
Hi Serkan Kaba,
I set up a java program to find the ink level of printer by your code help.But here i am not able to run the main class because it is not getting the mso.dll in path.
Exception in thread “main” java.lang.UnsatisfiedLinkError: no mso in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1860)
at java.lang.Runtime.loadLibrary0(Runtime.java:845)
at java.lang.System.loadLibrary(System.java:1084)
at LibMso.(LibMso.java:17)
at Main.main(Main.java:7)
So it would be helpful for me if you look into this problem.
here is my project structure like ..
Under package com.ssis
>Cartridge.java
>Color.java
>Gmso2.java
>InkLevelException.java
>JInkLevel.java
>LibMso.java
>Main.java
>PortType.java
>Printer.java
And the C files under jni directory >
com_googlecode_mso_jinklevel_JInkLevel.h
com_googlecode_mso_libmso_LibMso.h
JInkLevel.c
LibMso.c
So here when i will try execute Main Class it is throwing above exception and also i am new to this concept means calling c files from java using JNI(Java Native Intyerface) and how to get mso.dll files.
Regards
Sunil