2014-04-25 2 views
0

C#에서 VS 2012로 웹 응용 프로그램을 개발 중입니다.웹 양식의 메서드를 STAThread로 설정합니다.

Windows Form 형식의 dll이있는 지문 센서가 있습니다. 웹 응용 프로그램을 개발 중이므로 두 프로젝트를 알릴 필요가 있습니다.

하지만 지문 센서에는 Windows가 하나 인 것처럼 STAThread 환경이 필요합니다. STAThread를 WebForm으로 어떻게 설정할 수 있습니까? 나는 하위 프로세스는 단일 스레드의 컨테이너에없는 것을 말한다 예외 ThreadStateException있어,이

[STAThread] 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     //code of fingerprint 
    } 

을 시도했지만 작동하지 않았다. 도와주세요! 감사!

+0

나는 당신이 클라이언트 (웹)에서 그렇게 간단하게 할 수 있다고 생각하지 않는다. 나는 당신이 당신의 장치와 통신하는 webservice를 제외하고는 할 수 없다고 생각한다. 나는 이와 같은 것을 만들었지 만 프린터 용이었고 asmx 서비스를 사용했다. –

+0

감사합니다,하지만 어떻게 STAThread에서 웹 서비스를 실행합니까? –

+0

제 경우에는 선택한 프린터로 인쇄물을 보내기 위해 asmx 서비스를 사용했습니다. 귀하의 경우에는 상황이 다를 수 있습니다. 당신이나 실버 라이트 컴포넌트를 위해 액티브 X 컨트롤을 만들 수 있습니다. –

답변

1

웹 응용 프로그램에서 STAThread를 사용하지 마십시오.

지문 센서와 웹 앱 사이에있는 서비스를 만드는 것이 좋습니다. 이 서비스는 STA에서 작동하고 웹 응용 프로그램에 대한 메서드를 공개합니다.

+0

감사합니다. 웹 서비스를 제공 할 것입니다. –

+0

아니요, 웹 서비스를 만들지 마십시오. Windows 서비스 만들기 : – Nick

+0

다음 링크는 다음과 같습니다. http://msdn.microsoft.com/en-us/library/d56de412(v=vs.110).aspx. – Nick