본문 바로가기

쓰기

vb.net에서 MFC dll을 써서 이지트랜스로 번역해서 결과물을 가져오고 싶습니다.


그런데 아무리찾아봐도 방법을 모르겠습니다.


Imports System.Runtime.InteropServices


 Private Declare Fu*nction Translate Lib "ezTransXP.dll" (ByRef cszJapanese As String, ByVal szKorean As String, ByRef nBufSize As Int32) As Integer
 Private Declare Sub OnPluginInit Lib "ezTransXP.dll" (ByRef HWND As IntPtr, ByVal cszSettingStringBuffer As String)
 Private Declare Sub OnPluginClose Lib "ezTransXP.dll" ()


Dim szKorean As String = ""
Dim cszJapanese As String = "こんにちは"



이렇게하고 폼로딩에

OnPluginInit(Me.Handle, cszSettingStringBuffer)


Public Shared Fu*nction encode(ByVal str As String) As String

 Dim utf8Encoding As New System.Text.UTF8Encoding(True)
        Dim encodedString() As Byte
        encodedString = utf8Encoding.GetBytes(str)
        Return utf8Encoding.GetString(encodedString)
 End Fu*nction '유니코드 인코딩 펑션


버튼누르면 실행

Dim nbuff As IntPtr = 2048
Dim cc As Boolean = False
cc = Translate(cszJapanese, szKorean, nbuff)
RTBTText.Text = cc

RTB2Text.Text=szKorean


이렇게하면

텍스트박스에 True라고 뜹니다(에러없이 번역된 듯함)

그런데 2번째 텍스트박스에는 아무것도 안뜹니다.(szKorean string에 번역된게 들어오는 게 아니었나요?!)


어떻게해야 번역결과물을 가져올 수 있나요?


분류 :
Talk
조회 수 :
359
등록일 :
2016.06.14
02:21:37
엮인글 :
https://arallab.hided.net/2605099/a31/trackback
게시글 주소 :
https://arallab.hided.net/board_devtalk/2605099

유피에르

2018.06.20
14:44:53

약간의 개조를 했습니다..

        OnPluginInit(Me.Handle, 0)

        Dim nbuff As IntPtr = 0

        Dim cszJapanese As Byte() = System.Text.Encoding.GetEncoding(932).GetBytes("こんにちは")

        Dim szKorean As Byte()

        Array.Resize(szKorean, cszJapanese.Length * 10) '크기가 작으면 제대로 출력이 안되서 크기를 좀 많이 늘립니다.


        Translate(cszJapanese, szKorean, nbuff)

        Dim t_1 As String = System.Text.Encoding.GetEncoding(51949).GetString(szKorean)


    이러면 t_1값에 한글값이 나옵니다.
List of Articles
번호 제목 글쓴이 조회 수 추천 수 날짜sort 최근 수정일
공지 Talk [필독] 테스트필터 사용시 주의사항 라파에 155437   2008-08-03 2008-12-16 00:03
4 Talk UTF-8이나 유니코드 원활한 필터처리를 위해 생각해봤는데 [5] Wales 620   2014-06-16 2014-07-29 16:39
Translate함수에 포함된 필터 전후처리를 따로 빼서 원문 전환전과 번역후에 필터 처리를 하도록 하는건데 문제는 필터들 전부 멀티바이트 중점으로 만들어지다 보니 필터 전부를 손봐야 하는 상황이 오는군요. 그래서 일단 보류중...  
3 Talk ATCTNR에다가 Python만 갖다 붙여도...? [1] Hide_D 279   2016-01-11 2016-01-12 01:30
ATCTNR에 몇가지 버그는 좀 있지만 이거 좀 보완하고, 인젝터 세팅가능하게 한다음에 ATCTNR + ProtocolBuffer(+gRPC) + Python 3 정도로 해서 묶으면, 꽤 재미있는 물건이 나오지 않을까 생각해봅니다 ㅇㅇ 이쪽은 Standalone으로 해볼만할 것 같기도 하고...  
» Talk VB.NET에서 ezTransXP.dll사용하는 방법은 없나요? [1] R2D2 359   2016-06-14 2018-06-20 14:44
vb.net에서 MFC dll을 써서 이지트랜스로 번역해서 결과물을 가져오고 싶습니다. 그런데 아무리찾아봐도 방법을 모르겠습니다. Imports System.Runtime.InteropServices  Private Declare Fu*nction Translate Lib "ezTransXP.dll" (ByRef cszJapanese As Stri...  
1 Talk 아랄 트랜스 github/svn [6] ka7713 734   2018-12-26 2018-12-30 17:26
안녕하세요. 아랄트랜스 0.2/0.3 업데이트가 되지 않는 것이 안타까운데, github나 다른 곳으로 올려주실 생각은 없으신지요. 큰 도움은 안되더라도 조금이나마 기여하고 싶네요.