By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
443,815 Members | 1,142 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 443,815 IT Pros & Developers. It's quick & easy.

Printer Ink Status

P: n/a
Hi guys,

I'm working on a small desktop publishing software project where I need
to display the default printer's ink status/level in the status bar of
the main form. For the past 2 days I've been trying to find a way of
getting the printer ink level from the printer but I haven't been able
to find something that's generic. I looked at the:

* PJLMON.dll - PJL language commands for parrallel port or USB
printers. Got stuck on the implementation and usability :(

* OLEPRNLib ( http://blog.crowe.co.nz/archive/2005/08/08/182.aspx ) -
but its mainly via SNMP for network printers.

* WMI (System.Management namespace)? I'm not sure if this will tell the
current printer ink level.

Here's something interesting I read elsewhere, "IEEE 1284 compliant
devices connected to a parallel port or a USB port can transmit a
Device ID when asked to do so. The device ID of inkjet printers often
contains the level of ink available." Now how do I get this Device ID
and what's the format/syntax to be parsed to fetch the ink level?

The closest I could find is the libinklevel library (
http://libinklevel.sourceforge.net ), but its for Linux.

Do you guys have any suggestions or ideas on how I can accomplish this
"simple" task :) Thanks!

Nov 3 '06 #1
Share this Question
Share on Google+
2 Replies


P: n/a
On 3 Nov 2006 00:01:01 -0800, up*************@jetable.org wrote:
Hi guys,

I'm working on a small desktop publishing software project where I need
to display the default printer's ink status/level in the status bar of
the main form. For the past 2 days I've been trying to find a way of
getting the printer ink level from the printer but I haven't been able
to find something that's generic. I looked at the:

* PJLMON.dll - PJL language commands for parrallel port or USB
printers. Got stuck on the implementation and usability :(

* OLEPRNLib ( http://blog.crowe.co.nz/archive/2005/08/08/182.aspx ) -
but its mainly via SNMP for network printers.

* WMI (System.Management namespace)? I'm not sure if this will tell the
current printer ink level.

Here's something interesting I read elsewhere, "IEEE 1284 compliant
devices connected to a parallel port or a USB port can transmit a
Device ID when asked to do so. The device ID of inkjet printers often
contains the level of ink available." Now how do I get this Device ID
and what's the format/syntax to be parsed to fetch the ink level?

The closest I could find is the libinklevel library (
http://libinklevel.sourceforge.net ), but its for Linux.

Do you guys have any suggestions or ideas on how I can accomplish this
"simple" task :) Thanks!
I doubt there's anything universal or generic. It will depend on what the
printer vendor will make available. There are win32_Printer and
win32_printerconfiguration WMI classes, but they don't provide any ink
information. I can get that information for my HP PSC2100 through HP
software, but I don't know if that information is available through a COM
object or anywhere else. It might be worth a chat with the vendor to see
if they provide access to that information through an automation object.

--
Jeffery Hicks - www.ScriptingAnswers.com
SAPIEN Technologies - Scripting, Simplified. www.SAPIEN.com
Scripting books: www.SAPIENPress.com
Nov 3 '06 #2

P: n/a
In this case I do think approach your printer vendors such as HP or Canon
will be faster.

chanmm

<up*************@jetable.orgwrote in message
news:11**********************@b28g2000cwb.googlegr oups.com...
Hi guys,

I'm working on a small desktop publishing software project where I need
to display the default printer's ink status/level in the status bar of
the main form. For the past 2 days I've been trying to find a way of
getting the printer ink level from the printer but I haven't been able
to find something that's generic. I looked at the:

* PJLMON.dll - PJL language commands for parrallel port or USB
printers. Got stuck on the implementation and usability :(

* OLEPRNLib ( http://blog.crowe.co.nz/archive/2005/08/08/182.aspx ) -
but its mainly via SNMP for network printers.

* WMI (System.Management namespace)? I'm not sure if this will tell the
current printer ink level.

Here's something interesting I read elsewhere, "IEEE 1284 compliant
devices connected to a parallel port or a USB port can transmit a
Device ID when asked to do so. The device ID of inkjet printers often
contains the level of ink available." Now how do I get this Device ID
and what's the format/syntax to be parsed to fetch the ink level?

The closest I could find is the libinklevel library (
http://libinklevel.sourceforge.net ), but its for Linux.

Do you guys have any suggestions or ideas on how I can accomplish this
"simple" task :) Thanks!

Nov 3 '06 #3

This discussion thread is closed

Replies have been disabled for this discussion.