2010-12-06 3 views
1

데이터베이스에 저장된 vbscript 스 니펫 집합이 있습니다. 그것들은 사용자에 의해 만들어지며 복잡한 계산 중에 사용됩니다.vbscript 스 니펫을 vb.net으로 변환

우리는 그들을 실행하기 위해 microsoft scriptcontrol을 사용하고 있습니다. 우리가 64 비트 응용 프로그램으로 전환 할 때 우리는 더 이상 scriptcontrol을 사용할 수 없기 때문에 대신 CodeDom과 vb.net을 사용할 것입니다.

문제는 vb.net 스크립트로 변환 될 때까지 기존의 모든 vbscript를 지원해야한다는 것입니다.

스크립트에는 임의의 수의 매개 변수를 사용하는 간단한 함수 만 포함되어 있으며 일부 매개 변수가 있습니다. 내가 C# 개발자이기 때문에 vbscript contra vb.net 구문에 대한 많은 경험이 없습니다.

vbscript 코드를 vb.net (정규식 등을 사용하여)로 쉽게 변환 할 수 있습니까? 내가 생각해야만하는 포인터 나 것들을 얻었습니까? 또는 모든 스크립트가 사용자에 의해 변환 될 때까지 기다려야합니까?

답변

0

VB.Net에 Option Explicit Off이있는 경우 꽤 많은 vbscript 코드가 좋지만 한 가지 문제는 VB.Net에서 스크립트를 단독으로 실행할 수 없다는 것입니다. 코드는 변환없이 작동 할 수 있습니다. 같은 방법으로 실행하지 못할 수도 있습니다. 실행하기 전에 실행 파일로 컴파일해야하기 때문입니다. 각 스크립트가 서로 독립적으로 실행될 수 있다면 스크립트 당 하나의 실행 파일을 컴파일해야하거나 마스터 실행 파일을 커다란 Select Case으로 실행하여 명령 줄 매개 변수에 따라 관련 코드를 호출 할 수 있습니다.

내가 사용자를 변환하고 또한 Option Explicit On을 유지하고 사용자가 스크립트를 통과하고 데이터 유형 및 유사 항목을 추가하도록 기다리는 것은 가치가 있음을 제안합니다. 이는 꽤 많은 버그를 발견 할 가능성이 높기 때문입니다. 스크립트에서

+0

실행 파일이 필요 없습니다. 코드 롬을 사용하여 런타임에 코드를 컴파일하는 것이 가능합니다. 코드는 클래스로 래핑됩니다. 다른 포인터를 가져 주셔서 감사합니다. 내가 해봐야 할 것 같아. :) – jgauffin

관련 문제