共用方式為


新增即插即用支援(POS for .NET v1.14 SDK 文件)

Microsoft Point of Service for .NET(POS for .NET)包含對即插即用裝置的支援。 透過在服務物件中加入即插即用支援,應用程式可以變得更簡單、可靠且高效。 服務物件應盡可能支援此功能。

在服務物件層級實作即插即用支援非常簡單。 一旦你知道裝置的硬體 ID,只要在類別中加入一個屬性即可。 HardwareIdAttribute HardwareId屬性用於PosExplorer根據裝置狀態,智慧地從可用裝置列表中過濾出服務物件。 若服務物件的 HardwareId 屬性指向已安裝的即插即用裝置,但該裝置未連接,該服務物件將被排除在 PosExplorer 裝置清單之外。 當應用程式呼叫 時,此清單會回傳 GetDevices()

服務物件也可能有多個 HardwareId 屬性,此時 PosExplorer 會將所有指定裝置的聯集與服務物件關聯。 可以覆寫 HardwareId 屬性或新增至服務物件上的相關硬體清單,而無需重新建置服務物件组件。 關於覆寫或新增屬性的 HardwareId 資訊,請參閱 即插即用 XML 設定

應用程式負責捕捉 DeviceAddedEventDeviceRemovedEvent 事件,並根據從 PosExplorer 回傳的裝置清單適時更新其狀態。 服務物件不需要偵測這些事件。

要為你的服務物件類別新增 HardwareID 屬性

  1. 確定您的服務物件所支援的裝置或裝置的硬體 ID 範圍。

  2. 在類別定義之前,添加一個 HardwareId 屬性,並使用您的設備上使用的最低和最高硬體 ID。 HardwareId多種屬性可用來識別多個硬體識別碼範圍。

Example

以下範例為前一節所示的基本範本新增屬性 HardwareId

using System;

using Microsoft.PointOfService;
using Microsoft.PointOfService.BaseServiceObjects;

namespace SOTemplate
{

    [HardwareId("HID\\Vid_05e0&Pid_038a",
                "HID\\Vid_05e0&Pid_038a")]

    [ServiceObject(
                DeviceType.Msr,
                "ServiceObjectTemplate",
                "Bare bones Service Object class",
                1,
                9)]
    public class MyServiceObject : MsrBase
    {
        public MyServiceObject()
        {
        }
    }
}

另請參閱

任務

概念

其他資源