2008-11-13 14 views
6

나는이 질문에 대답하려고 노력했지만 인터넷을 통해 뭔가 명확하지는 않습니다. VB6에서 콘솔 앱을 만들 수 있습니까?어떻게 VB6 콘솔 응용 프로그램을 구축합니까

나는 윈도우를 설치하지 않는 VB6 앱을 가지고있다. 나는 항상 그것이 콘솔 앱이라고 생각했다. 그러나, 그 안에 Windows API SetConsoleCtrlHandler 함수를 사용할 수 있기를 원합니다. 나는 C++/MFC 응용 프로그램을 사용하여 콘솔 응용 프로그램을 만들기 위해 링커 스위치를 설정해야한다고 생각합니다. 그리고 내 동료 개발자 중 하나는 VB6가 진정한 콘솔 앱을 만들지 못해서 작동하지 않는다고 말했습니다. Windows가 VB6의 콘솔 앱으로 인식 할 콘솔 앱을 만들 수 있습니까?

플랫폼 : 윈도우 XP SP2

개발 플랫폼 : VB6

답변

8

예. 전적으로 헤드리스 애플리케이션을 만들 수도 있습니다 (과거에 몇 번 했었습니다). This link은 코드 스 니펫과 함께 예제를 제공합니다.

+0

@NXC, 고마워요. 바로 의사가 주문한 것입니다. –

+0

좋은 링크이지만, 먼저 Windows API AllocConsole과 FreeConsole을 호출하지 않고도 Scripting.FileSystemObject 메서드를 사용하여 실행할 수 없습니다. 아마도이 문제는 일부 Windows 버전에서만 발생합니다. 자세한 내용은 여기를 참조하십시오 : http://internettrash.com/users/fdb/cons.htm. – Gavin

+0

@Gavin - 새로운 버전의 Windows에서는 문제가 될 수 있습니다. IIRC는 헤드리스 VB6 애플리케이션을 작성한 마지막 10 년 전이었고 대상 플랫폼은 NT4였습니다! – ConcernedOfTunbridgeWells

1

이 부분은 article을 참조하십시오.

또는 VB6 응용 프로그램을 VBScript 프로그램으로 다시 작성할 수 있습니다.

+0

감사합니다 패트릭 - 도움이됩니다. –

3

Karl E. Peterson의 코드 http://vb.mvps.org/samples/project.asp?id=Console을 사용하면 매우 완벽한 기능의 콘솔 응용 프로그램을 만들 수 있습니다.

간단한 프로그램은 콘솔 하위 시스템 용으로 컴파일 된 VB6 EXE를 다시 연결하여 만들 수 있습니다. Karl은 같은 웹 페이지에서이 일을합니다. LinkConsole.vbs가 나타날 때까지 아래로 스크롤하십시오.

+0

예, 제 시간에 어떻게했는지 생각해 봅니다 : .exe에 콘솔 앱을 말해야한다는 것입니다. 컴파일 후 단계에서해야합니다 (make는 당신의 친구입니까?). –

+0

3 월 31 일 현재 Karl Peterson의 코드는 vbAdvance라는 무료 추가 기능 (다른 많은 강력한 기능 포함)으로 싸여 있습니다. http://vb.mvps.org/tools/vbAdvance/ – MarkJ

+0

Karl은 언제나처럼 훌륭한 일을 해 냈습니다. 그러나 이것은 대부분의 콘솔 프로그램을 만들기위한 큰 라드 (오버 헤드)입니다. 당신은 그가 제공 한 것을 거의 필요로하지 않습니다. 좋은 소식은 원본을 가지고있어 필요에 따라 잘라낼 수 있다는 것입니다. – Bob

관련 문제