UniPRT SDK  v1.0.0.0
UniPRT.Sdk.Settings.SettingsReadWrite Class Reference

Support for reading and writing printer settings. More...

Inheritance diagram for UniPRT.Sdk.Settings.SettingsReadWrite:
UniPRT.Sdk.Settings.ISettingsReadWrite

Public Member Functions

 SettingsReadWrite (IComm connection)
 Must pass an opened comm connection that can remain opened if listening for unsolicited messages from printer. More...
 
 SettingsReadWrite (string commDescriptor)
 Constructor called when creating a connection managed by the SDK. More...
 
void Dispose ()
 
Dictionary< string, SettingGetAllProperties ()
 Inherited from ISettingsReadWrite.GetAllProperties.
 
Dictionary< string, string > GetAllValues ()
 Inherited from ISettingsReadWrite.GetAllValues.
 
Dictionary< string, SettingGetProperties (List< string > keys)
 Inherited from ISettingsReadWrite.GetProperties.
 
Setting GetProperties (string key)
 Inherited from ISettingsReadWrite.GetProperties.
 
string GetValue (string key)
 Inherited from ISettingsReadWrite.GetValue.
 
Dictionary< string, string > GetValues (List< string > keys)
 Inherited from ISettingsReadWrite.GetValues.
 
bool SetValue (string keyToSet, string valueToSet)
 Inherited from ISettingsReadWrite.SetValue.
 
bool SetValues (Dictionary< string, string > keysToSet)
 Inherited from ISettingsReadWrite.SetValues.
 

Protected Member Functions

virtual void Dispose (bool disposing)
 

Detailed Description

Support for reading and writing printer settings.

For list of valid keys and values refer to: Settings Key/Value Items

Examples


using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using UniPRT.Sdk.Comm;
namespace Snippets
{
class MySettings
{
public static void MainSettings(string[] args)
{
IComm ptrComm;
ptrComm = new TcpConnection("192.168.1.50", TcpConnection.DEFAULT_MGMT_PORT);
ptrComm.Open();
Console.WriteLine(Environment.NewLine+ "Reading some settings..." + Environment.NewLine);
ReadSomePrinterSettings(ptrComm);
Console.WriteLine(Environment.NewLine + "Making Setting Changes..." + Environment.NewLine);
ChangePrinterSettings(ptrComm);
ptrComm.Close();
}
public static void ReadSomePrinterSettings(IComm ptrComm)
{
try
{
if (null != ptrComm)
{
if (!ptrComm.Connected)
{
Console.WriteLine("Error: no connection");
return;
}
SettingsReadWrite mySettings = new SettingsReadWrite(ptrComm);
// Read individual settings if needed
Console.WriteLine($"LCD Units: '{mySettings.GetValue("LCD.LabelUnits")}'");
Console.WriteLine($"Printer Resolution: '{mySettings.GetValue("Printer.Head.DPI-d")}'");
Console.WriteLine($"LCD Language: '{mySettings.GetValue("LCD.Language")}'");
// read list of settings
Console.WriteLine();
Console.WriteLine("Reading label settings:");
Dictionary<string, string> contentList = mySettings.GetValues(
new List<string>() {
"Handling.Type",
"Image.Length-in",
"Image.Width-in",
"Image.Clip-b",
"Label.Sensor" });
foreach (KeyValuePair<string, string> item in contentList)
{
Console.WriteLine($"\"{item.Key}\" = {item.Value}");
}
mySettings.Dispose();
}
}
catch (Exception err)
{
Console.WriteLine($"Error: {err}");
}
}
public static void ChangePrinterSettings(IComm ptrComm)
{
try
{
if (null != ptrComm)
{
if (!ptrComm.Connected)
{
Console.WriteLine("Error: no connection");
return;
}
SettingsReadWrite mySettings = new SettingsReadWrite(ptrComm);
// Change units displayed on LCD
// LCD.MediaUnits can be: eInches, eMetric
mySettings.SetValue("LCD.MediaUnits", "\"eInches\"");
mySettings.SetValue("Image.Length-in", "4.3");
// Change list of settings
// Handling.Type can be: eContinuous, eCut, ePeelOff, eTearOff, eTearOffStrip
// Label.Sensor can be: eDisable, eMark, eGap, eAdvNotch, eAdvGap,
Dictionary<string, string> setKeys =
new Dictionary<string, string>() {
{ "Handling.Type", "\"eContinuous\"" },
{ "Image.Clip-b", "false" },
{ "Label.Sensor", "\"eGap\"" } };
if (mySettings.SetValues(setKeys))
{
Console.WriteLine("Setvalues SUCCESS.");
}
else
{
Console.WriteLine("Setvalues failed.");
}
Console.WriteLine();
Console.WriteLine("Settings read after changes made:");
Dictionary<string, string> contentList = mySettings.GetValues(new List<string>(setKeys.Keys));
foreach (KeyValuePair<string, string> item in contentList)
{
Console.WriteLine($"\"{item.Key}\" = {item.Value}");
}
mySettings.Dispose();
}
}
catch (Exception err)
{
Console.WriteLine($"Error: {err}");
}
}
}
}

Constructor & Destructor Documentation

◆ SettingsReadWrite() [1/2]

UniPRT.Sdk.Settings.SettingsReadWrite.SettingsReadWrite ( IComm  connection)

Must pass an opened comm connection that can remain opened if listening for unsolicited messages from printer.

A connection is necessary to send/receive printer status messages.

◆ SettingsReadWrite() [2/2]

UniPRT.Sdk.Settings.SettingsReadWrite.SettingsReadWrite ( string  commDescriptor)

Constructor called when creating a connection managed by the SDK.

commDescriptor is descriptor for the communication used to connect with printer.
TCP descriptor format: "ip" or "ip:port"
e.g. "127.0.0.1" or "127.0.0.1:3007"
If port is not provided, default value is used.

UniPRT.Sdk.Settings
Definition: Configs.cs:11
UniPRT
Provide support for different communication interfaces/ports.
Definition: Communication.cs:9
UniPRT.Sdk.Settings.SettingsReadWrite.SettingsReadWrite
SettingsReadWrite(IComm connection)
Must pass an opened comm connection that can remain opened if listening for unsolicited messages from...
Definition: SettingsReadWrite.cs:510
UniPRT.Sdk.Comm
Definition: Communication.cs:9
UniPRT.Sdk
Definition: Communication.cs:9