需要在C#中设置代码页,然后在VB6中打开C#exe文件

时间:2017-05-23 17:16:27

标签: c# vba visual-studio vb6

我想在VB6上使用中文Unicode将参数(例如:900)从Double转换为Hex。但问题是,除了127之外,它将显示为“?”。因此,我想使用C#应用程序(带有.exe文件)设置代码页(德语和中文),然后使用VB6打开此.exe文件。

  1. Vb6上的Double to Hex功能
  2. 在C#
  3. 上将代码页设置为中文
  4. 在VB6上,通过调用它来打开C#exe文件。
  5. 我该怎么做?

    我使用VS 2012 for C#和Sax Basic Engine作为VB6的IDE。

    第1步。

    Public Function ConvDoubleToHexString(dVal As Double, ByVal nByteCount As Integer) As String
    On Error GoTo ErrorHandle
    
    Dim sHex As String
    Dim sTmp As String
    Dim n As Integer
    Dim m As Long
    Dim sRet As String
    Dim nByteCountMerk As Integer
    
      m = 1
      sHex = Hex(dVal)
    
      sHex = String(nByteCount * 2 - Len(sHex), "0") & sHex '
      For n = 0 To nByteCount - 1
      '0,1,2 ...                        1,3,5, ...
      sTmp = ChrW(Val("&H" & Mid(sHex, m, 2)))
      m = m + 2
      sRet = sRet & sTmp
      Next n
    
      Exit Function
    ErrorHandle:
      'Call ErrorEasy("Public Function", "ConvDoubleToHexString")
      On Error GoTo 0
      Resume Next
    
    End Function
    

    第2步。

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    
    namespace Auf
    {
            static void Main(string[] args)
            {
    
                // Encoding by code page -> DE or CH
                Encoding deu = Encoding.GetEncoding(1250);
                Encoding chi = Encoding.GetEncoding(936);
    
    
    
    
            }
        }
    }
    

    第3步。

    ????
    

    期待您的回复。

    编辑:在第2步中编辑了几行。我已经设置了DE和CH语言的代码页。为了成功执行第1步(即不再使用该问号符号,我还应该在步骤2中插入以便在步骤3中打开exe文件(以及步骤3中的方法)?

0 个答案:

没有答案