Q&A

  • VB소스를 DELPHI로 엑스포팅하는 법좀...
안녕하세요...

지금 비주얼베이직 omr리딩처리소소를 델파이로 바꾸는

작업을 하고 있는데 이해가 가지 않는 부분이(사실 몰라서)

있어서 이렇게 질문을 올립니다. (여러 고수님들 협조!!!)



비베에서는 함수의 리턴타입을 객체로 지정할 수 있는 것 같은디(?)

public function marking(data as string) as omrerr_check

dim check as omrerr_check

...

이거를 델파이로 바꾸자니 위의 omrerr_check리턴 타입과 변수 omrerr_check를 어떻게 바꿔야 될지 막막합니다.



참고로 omrerr_check 객체는 비베에서는

public enum omrerr_check

has_no_err = 0

...

end enum



2  COMMENTS
  • Profile
    김지엽 2001.11.19 09:09
    VB를 잘 모르긴 하지만, 별 큰 문제는 아닌거 같은데요?

    제가 보기에는 Omrerr-check 는 리턴값을 정의하는 상수들의 집합인거 같고, 그래서 omrr_check라는 놈을 리턴값으로 삼는 함수를 쓰는 거져?

    유닛의 Const 절에



    유닛의 Type절에

    TOmrErrorCheck = (toNo_Error, toError1, toError2, to_Unknown);

    이런 객체를 등록시켜 주세요. 그리고 function의 리턴타잎을 TOmrErrorCheck으로 하시구요.



    비베에서는 그 값들이 숫자 인덱스를 갖도록 해서 정수 값으로 처리하는 거 같군요. 델파이 같은 경우는 그런 인덱스가 별로 필요치 않을거 같은데.. 굳이 필요하다면..

    펑션을 하나 만들어 두면 되겠죠.



    function OmrError(Error_code: integer):TOmrErrorCheck;

    begin

    case Error_code of

    1 : Result := toNo_Error;

    2 : Result := toError1;

    3 : Result := toError2;

    else

    Result := toUnKnown;

    end;

    end;



    이런식으로 만들어 두고, 어딘가에서 정수값이 들어와서 에러체크값으로 간주되는 코드에 그 함수를 대입시키면 되고, 반대의 경우는 상응하는 함수를 만들어 주면 될거 같은데요..



    이 해결방법이 좋은건지 나쁜건진 모르겠지만요.



    그럼.

  • Profile
    궁금놈 2001.11.25 01:06
    김지엽 wrote:

    > VB를 잘 모르긴 하지만, 별 큰 문제는 아닌거 같은데요?

    > 제가 보기에는 Omrerr-check 는 리턴값을 정의하는 상수들의 집합인거 같고, 그래서 omrr_check라는 놈을 리턴값으로 삼는 함수를 쓰는 거져?

    > 유닛의 Const 절에

    >

    > 유닛의 Type절에

    > TOmrErrorCheck = (toNo_Error, toError1, toError2, to_Unknown);

    > 이런 객체를 등록시켜 주세요. 그리고 function의 리턴타잎을 TOmrErrorCheck으로 하시구요.

    >

    > 비베에서는 그 값들이 숫자 인덱스를 갖도록 해서 정수 값으로 처리하는 거 같군요. 델파이 같은 경우는 그런 인덱스가 별로 필요치 않을거 같은데.. 굳이 필요하다면..

    > 펑션을 하나 만들어 두면 되겠죠.

    >

    > function OmrError(Error_code: integer):TOmrErrorCheck;

    > begin

    > case Error_code of

    > 1 : Result := toNo_Error;

    > 2 : Result := toError1;

    > 3 : Result := toError2;

    > else

    > Result := toUnKnown;

    > end;

    > end;

    >

    > 이런식으로 만들어 두고, 어딘가에서 정수값이 들어와서 에러체크값으로 간주되는 코드에 그 함수를 대입시키면 되고, 반대의 경우는 상응하는 함수를 만들어 주면 될거 같은데요..

    >

    > 이 해결방법이 좋은건지 나쁜건진 모르겠지만요.

    >

    > 그럼.