2014-09-26 6 views
2

야간에 PDF 기반 보고서 (재무 차트)를 만드는 프로세스를 시작할 필요가 있습니다. 과거 개발자는 System.Drawing 및 System.Printing을 사용하여 Amyuni를 사용하여 PDF로 디렉터리에 보고서를 만들고 저장하는 구성 요소를 만들었습니다. 이제 분석가가 다음 날 사용할 시간을 제외하고 PDF를 생성하기 위해이 구성 요소를 사용하고자합니다. 실제 그래프는 GDI +와 DrawLine, DrawString 등을 사용하여 사용자 지정 그리기됩니다. PrintPageEventArgs Graphics 속성을 그림의 캔버스로 사용합니다.Windows 서비스 인쇄 PDF

구성 요소를 사용하면 Windows Forms 응용 프로그램에서 정상적으로 작동합니다. 서비스가 프린터에 액세스 할 수 있도록 사용자 계정 (LocalSystem 아님)에서 실행되는 구성 요소를 사용할 때 예외가 발생하지 않고 파일이 작성되지 않습니다.

나는 System.Drawing 및 System.Printing이 실제로 Windows Service에서 지원되지 않지만 지원되지 않는다는 것을 알고 있습니다. MS가 문제를 해결하는데 도움이되지 않는다는 것을 의미합니다.

이 기능을 사용하려면 어떻게해야할까요? 이것은 대용량 프로세스가 아닙니다. 현재 그들은 커맨드 라인 프로그램과 윈도우 작업 스케줄러로 작업을하고 있지만 사용자가 로그인해야합니다.

업데이트 : 그래서 이것을 .NET 콘솔 응용 프로그램으로 시도하고 Windows 작업으로 시작했습니다. 스케줄러 및 동일한 문제가 발생합니다. 바탕 화면에서 콘솔 응용 프로그램을 실행하면 작동합니다. 실행되는 작업 스케줄러에서 실행하지만 파일이 만들어지지 않습니다. 나는 아무런 예외도 일어나지 않고 있으며 프로세스가 차트를 만드는 것처럼 보입니다. 그들은 단지 출력 디렉토리에 나타나지 않습니다. 내가 로그인 한 동일한 계정으로 실행되도록 작업을 설정했습니다. 이전에 수행 한 작업은 .NET 솔루션이 아닌 Visual Basic 6 솔루션이었습니다.

+3

예약 된 작업을 설정하여 사용자가 로그온되어 있는지 여부에 관계없이 실행할 수 있습니다. –

+1

"지원되지 않음"은 작동하지 않으며 데스크톱 응용 프로그램에서 수행 할 수있는 많은 작업이 "지원되지 않음"(** 작동하지 않을 것이라는 점에서 **)이라는 경우도 있습니다. 서비스. 나는 여기에 봉사 할 필요성을 전혀 느끼지 못한다. 작업 스케줄러를 사용하면 해당 계정이 현재 로그인되어 있는지 여부에 상관없이 특정 계정으로 응용 프로그램을 실행할 수 있습니다. –

+0

설정 서비스가 데스크톱과 상호 작용할 수 있습니다. 또는 eddie_cat에 의해 suggeted 된 스케줄 된 태스크로 실행하십시오. – Paparazzi

답변

1

이 게시물의 향후 독자를 위해이 질문에 설명 된 문제는 Windows Server 운영 체제에서 Amyuni 라이브러리의 라이센스 제한 때문에 발생했습니다 (Amyuni Technologies는 개발중인 응용 프로그램에 따라 여러 가지 라이센스 모델을 제공합니다). 이 경우에는 Amyuni 지원 부서에 문의 한 후 새로운 라이센스 정보가 제공되어 문제가 해결되었습니다.
면책 조항 : Amyuni Technologies에서 근무하고 있습니다.