UniPRT SDK  v1.0.0.0
UniPRT.Sdk.Settings.SettingsReadWrite 類別 參考文件

支援讀取和寫入印表機設定。 更多...

類別UniPRT.Sdk.Settings.SettingsReadWrite的繼承圖:
UniPRT.Sdk.Settings.ISettingsReadWrite

公開方法(Public Methods)

 SettingsReadWrite (IComm connection)
 必須傳遞一個已打開的 comm 連接,該連接可以保持打開狀態以監聽未經請求的印表機訊息。 更多...
 
 SettingsReadWrite (string commDescriptor)
 當創建由 SDK 管理的連接時呼叫的構造函數。 更多...
 
void Dispose ()
 
Dictionary< string, SettingGetAllProperties ()
 繼承自 ISettingsReadWrite.GetAllProperties。
 
Dictionary< string, string > GetAllValues ()
 繼承自 ISettingsReadWrite.GetAllValues。
 
Dictionary< string, SettingGetProperties (List< string > keys)
 繼承自 ISettingsReadWrite.GetProperties。
 
Setting GetProperties (string key)
 繼承自 ISettingsReadWrite.GetProperties。
 
string GetValue (string key)
 繼承自 ISettingsReadWrite.GetValue。
 
Dictionary< string, string > GetValues (List< string > keys)
 繼承自 ISettingsReadWrite.GetValues。
 
bool SetValue (string keyToSet, string valueToSet)
 繼承自 ISettingsReadWrite.SetValue。
 
bool SetValues (Dictionary< string, string > keysToSet)
 繼承自 ISettingsReadWrite.SetValues。
 

保護方法(Protected Methods)

virtual void Dispose (bool disposing)
 

詳細描述

支援讀取和寫入印表機設定。

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

範例


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}");
}
}
}
}

建構子與解構子說明文件

◆ SettingsReadWrite() [1/2]

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

必須傳遞一個已打開的 comm 連接,該連接可以保持打開狀態以監聽未經請求的印表機訊息。

必須有連接才能發送/接收印表機狀態訊息。

◆ SettingsReadWrite() [2/2]

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

當創建由 SDK 管理的連接時呼叫的構造函數。

commDescriptor 是用於與印表機連接的通訊描述符。
TCP 描述符格式:"ip" 或 "ip:port"
例如:"127.0.0.1" 或 "127.0.0.1:3007"
如果未提供端口,則使用預設值。

UniPRT.Sdk.Settings
Definition: Configs.cs:11
UniPRT
提供對不同通訊介面/端口的支援
Definition: Communication.cs:9
UniPRT.Sdk.Settings.SettingsReadWrite.SettingsReadWrite
SettingsReadWrite(IComm connection)
必須傳遞一個已打開的 comm 連接,該連接可以保持打開狀態以監聽未經請求的印表機訊息。
Definition: SettingsReadWrite.cs:510
UniPRT.Sdk.Comm
Definition: Communication.cs:9
UniPRT.Sdk
Definition: Communication.cs:9