2014-04-29 2 views
0
내 WPF 응용 프로그램에서 현금 서랍을 열 필요가

,이, 내가 현금 서랍을 다루는 것은 이번이 처음이다. 내가 시도했지만 작동하지 복용량 HERE열기 현금 서랍

CashDrawer myCashDrawer; 
PosExplorer explorer; 

public MainWindow() 
{ 
    InitializeComponent(); 
    this.Loaded += MainWindow_Loaded; 
} 

void MainWindow_Loaded(object sender, RoutedEventArgs e) 
{ 
    explorer = new PosExplorer(); 
    DeviceInfo ObjDevicesInfo = explorer.GetDevice("CashDrawer"); 
    myCashDrawer = explorer.CreateInstance(ObjDevicesInfo); 

} 

private void Button_Click(object sender, RoutedEventArgs e) 
{ 
    myCashDrawer.Open(); 
    myCashDrawer.Claim(1000); 
    myCashDrawer.DeviceEnabled = true; 
    myCashDrawer.OpenDrawer(); 
    myCashDrawer.DeviceEnabled = false; 
    myCashDrawer.Release(); 
    myCashDrawer.Close(); 
} 

당신은 내 테스트 응용 프로그램을 다운로드 할 수 있습니다 : 그래서 POSforDotNet의 V1.14를 설치하고 새 프로젝트를 시작하고 참조를 추가 한,이 예제를 발견했습니다 : (

)는 myCashDrawer = explorer.CreateInstance (ObjDevicesInfo 나에게 오류를 주었다 라인

Microsoft Point of Service가 붙어있어서 완전히 이해할 수 없기 때문에 도와주세요.

+0

당신은 '작동하지 않는'정의 할 수 있습니까? –

+0

@PatrickHofman, 시간 내 주셔서 감사합니다. 오류가 발생했습니다. myCashDrawer = explorer.CreateInstance (ObjDevicesInfo); 선. 테스트 응용 프로그램을 다운로드 할 수 있습니다. –

+4

원래 질문에서받은 오류를 게시해야합니다. 나는 POS 용 .NET을 사용할 때 Windows 레벨에서 장치를 요구하는 데 필요한 별도의 응용 프로그램이 있었음을 기억합니다. 당신은 그것을 연구 해 볼 수도 있습니다. – alan

답변

3

당신은 CashDrawer에 형태 캐스트 할 필요가있다. 오류가 발생하지 않도록 코드를 업데이트했습니다. 당신이 두 개 이상 설치 한 경우 (CashDrawer) 캐스트 게다가

myCashDrawer = (CashDrawer)explorer.CreateInstance(ObjDevicesInfo); 
2

, 나는

DeviceInfo ObjDevicesInfo = explorer.GetDevice("CashDrawer", "LOGICAL DEVICE NAME for your cash drawer"); 

를 사용하는 것이 좋습니다 것입니다 그리고 당신은,이 오류가 발생합니다 하나 개의 매개 변수를 사용하여 (그리고 MSPOS v1.14는 시험을위한 허위 금전 함을 설치하므로, 적어도 당신의 육체와 그 하나를가집니다.

관련 문제