none
Windows7で POS for .NET を利用した、EPSON TM-T70 Open に失敗します RRS feed

  • 質問

  • EPSON TM-T70(USB接続)をオープンしようとすると下記のエラーが発生します。
    The value of the 'DevicePath' property must be defined by the service object before Open() can be called.
    ---実行しているロジック---
    PosExplorer posExplorer = new PosExplorer();
    
    DeviceCollection posDevices=null;
    
    PosCommon posCommon = null;
    
    posDevices = posExplorer.GetDevices(DeviceCompatibilities.OposAndCompatibilityLevel1);
    
    foreach (DeviceInfo dev in posDevices)
    
    {
    
     if ((dev.Type == "PosPrinter") && (dev.ServiceObjectName == "TM-T70"))
    
     {
    
      posCommon = (PosCommon)_posExplorer.CreateInstance(dev);
    
      break;
    
     }
    
    }
    
     posCommon.Open();
    
     posCommon.Claim(3000);
    
    


    ------
    Open前のDeviceInfo をチェックしてみたところ、
    ServiceObjectName:TM-T70
    Compatibility:CompatibilityLevel1
    Description:EPSON TM-T70
    HardwareDescription:
    HardwareId:
    HardwarePath:
    IsDefault:False
    ManufacturerName:SEIKO EPSON
    ServiceObjectVersion:1.11.4092.19294
    Type:PosPrinter
    UposVersion:1.11
    となり、何故か、HardwarePath が取得できていません。
    エラーが発生することと何か関係があるでしょうか。
    動作環境は
    Windows7
    POS for .NET 1.12
    EPSON OPOS ADK for .Net 1.11.16
    .net Framework 4.0
    です。
    ~\Program Files\Microsoft Point Of Service\SDK\Samples\Sample Application
    にインストールされているTestApp.exe や、EPSONの、CheckHealth では、
    HardwarePath も「TM-T70」と、表示されていますし、印刷もOKです。
    また、同じプログラムでも、
    Windows Embedded POSReady 2009
    POS for .NET 1.12
    EPSON OPOS ADK for .Net 1.11.16
    .net Framework 4.0
    の環境では、HardwarePath が「TM-T70」と、表示され、印刷OKです。
    何かこのような現象に心当たりのあるかたがいらっしゃいましたら、
    是非情報をご提供ください。





    • 編集済み TenPoint 2011年7月11日 2:37
    2011年7月8日 12:21

回答

  • もしWindows7またはWindows Vistaで現象が起こるのであれば、UACによる設定のリダイレクトが原因の可能性があります。

    SetupPOS for OPOS.NETを管理者で実行する必要があります。

    Epsonのサポートでお尋ねになるのも1つの方法です。

     


    http://systemartlaboratory.com/
    • 回答としてマーク TenPoint 2011年7月11日 2:35
    2011年7月9日 13:50

すべての返信

  • もしWindows7またはWindows Vistaで現象が起こるのであれば、UACによる設定のリダイレクトが原因の可能性があります。

    SetupPOS for OPOS.NETを管理者で実行する必要があります。

    Epsonのサポートでお尋ねになるのも1つの方法です。

     


    http://systemartlaboratory.com/
    • 回答としてマーク TenPoint 2011年7月11日 2:35
    2011年7月9日 13:50
  • 三輪の牛 様

    アドバイスいただきありがとうございます。

    UACにより、SetupPOS にてデバイス関連の設定を行った際に、設定が書き込まれる場所が、実行を行ったユーザ用の仮想スペースになっており、、

    プログラムのほうが参照している場所と異なっている、ということですね。

    SetupPOS の プロパティを、管理者権限での実行にする、あるいは、XP互換で実行する設定にした上で実行、設定を行い、

    プログラムを実行させところ、HardwarePath の取得、オープンともに成功し、印字を行うことが出来ました。

    ご返信、ありがとうございました。


    2011年7月11日 2:34