2011-09-18 14 views
0

VB.NET으로 작성된 작은 exe 파일로 데이터베이스에 연결하고 마지막 행을 가져 와서 프린터로 정보를 보냅니다. 이것은 프로그램의 일부분이지만 특수 폰트를 사용하고 프린터의 너비를 계산합니다.웹 브라우저에서 클라이언트 컴퓨터에 설치된 exe 파일을 실행하십시오.

저는 PHP와 동일한 프로그램을 개발했습니다. 이제 거의 모든 기능이 Windows 기반 프로그램과 동일합니다. 그러나 웹 브라우저의 인쇄 결과는 exe 파일과 동일 할 수 없습니다. 그래서 그냥 매개 변수를 exe 파일에 보내고 실행하고 싶습니다. (자바 스크립트 호출 또는 기타) Exe 파일은 클라이언트 컴퓨터에 있으며 내가 어디에 있는지 알 수 있습니다.

저에게 그렇게 할 수있는 방법을 제안 해 주실 수 있습니까? 나는 이것이 dll이나 ocx를 사용하여 가능하다는 것을 읽었습니다.

브라우저 플러그인을 개발하는 데 익숙하지 않습니다. 튜토리얼이나 책이 있습니까? 미리 감사드립니다.

+1

''보안 ''''''''''위험''을 함께 연결 한 것으로 보입니다. –

+0

이것은 공용 프로젝트가 아니기 때문에 보안 위험은 없습니다. –

답변

1

내 컴퓨터에서 갑자기 웹 사이트에서 exe를 다운로드하고 실행해도 괜찮은지 묻는다면 대화가 끝나기 전에 창을 닫았을 것입니다.

여기서 가장 간단한 방법은 PHP 출력 형식을 수정하는 것입니다. 단지 클라이언트에서 exe 파일을 실행할 가능성이 있기 때문에 백만 분의 일 정도 거리에 있어야합니다. 해당 사용자가 작업하고있는 사용자와 시스템을 완벽하게 제어하지 못한다면 어떤 exe 관련 시스템이든 부서지기 쉽고 그러한 제어 권한을 가지고 있더라도 교묘히 다루어집니다.

php 용으로 작성된 pdf 라이브러리가있어 글꼴을 비롯하여 출력을보다 잘 제어 할 수 있습니다. 그러한 라이브러리를 쓸 수있는 곳은 Sitepoint입니다.

또는 .NET 응용 프로그램을 PHP에서 통신 할 수있는 웹 응용 프로그램/서비스로 전환 할 수 있습니다.

+0

안녕하십니까, JHolyhead는 (는) 회사 시스템이이 시스템을 사용하므로 신뢰에 문제가 없습니다. PDF 라이브러리는 좋지만 사용자가 웹 페이지에서 "인쇄"버튼을 누르면 즉시 인쇄 할 수 있습니다. 그 방법이 있을까요? 또한 .NET 응용 프로그램을 PHP와 통신 할 수있는 웹 응용 프로그램/서비스로 전환 할 생각이었습니다. 다른 방법을 찾지 못하면 내가 할거야. –

+0

웹 페이지에서 일부 내용을 인쇄 할 때 잘 계획된 인쇄 스타일 시트를 사용하여 필요한 모든 것을 얻을 수없는 이유를 알 수 없습니다. 어쩌면 나는 당신의 문제의 복잡성 중 일부를 놓치고 있지만, 상당히 간단한 문제에 대해 꽤 복잡한 해결책을 시도하고있는 것처럼 들린다. – JHolyhead

+0

사실 이것은 웹 페이지가 아닙니다. 그것은 거래의 영수증입니다. 그러나 출력은 고유 한 프린터에 대해 지정됩니다. –

0

브라우저 플러그인을 개발하여 실망시키지 않는 것은 그리 어렵지 않습니다. 할 수 있으면 JHolyhead에 동의하는 것이 좋습니다. 보안 문제를 고려해야하기 때문입니다.

일부 C++를 알아야하고 FireBreath 프레임 워크를 사용하여 모든 플랫폼에서 작동하는 플러그인을 작성할 수 있습니다. 프로세스 시작은 CreateProcessEx를 사용하여 수행 할 수 있으며 실행해야 할 주된 문제는 (보호 모드로 인해) Vista/win7이 활성화 된 경우 IE에서 낮은 무결성 모드로 프로세스가 시작된다는 것입니다. 가장 쉬운 방법은 신뢰할 수있는 사이트 목록에 사이트를 추가하는 것입니다.하지만 중간 무결성 (보통 비 상승) 모드로 프로세스를 시작하는 방법은 여러 가지가 있습니다.

C++을 알고 있고 Windows 개발 경험이 있으면 매우 쉽습니다. 그렇지 않으면 조금 더 까다로울 수 있습니다. 다른 옵션 (브라우저 플러그인을 설치하지 않아도 됨)이 있으면 그 옵션을 따르는 것이 더 나을 것입니다. 그러나 기본 FireBreath 플러그인은 약 20 분 안에 함께 던질 수 있습니다 (비디오 자습서가 있음).

+0

확인해 보겠습니다. 고마워요. –

관련 문제