⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 modoutput.bas

📁 一个把VB原代码转换为VC原代码的软件代码。
💻 BAS
📖 第 1 页 / 共 5 页
字号:
    WriteInHead vbTab & vbTab & "{" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "App.Path[i]=0;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "break;" & vbNewLine
    WriteInHead vbTab & vbTab & "}" & vbNewLine
    WriteInHead vbTab & "}" & vbNewLine
    WriteInHead vbTab & "App.hInstance=GetModuleHandle(0);" & vbNewLine
    WriteInHead vbTab & "App.ThreadID=GetCurrentThreadId();" & vbNewLine
    WriteInHead vbTab & "App.StartMode=ApplicationStartConstants_vbSModeStandalone;" & vbNewLine
    WriteInHead vbTab & "App.Title=" & Chr(34) & ProjectTitle & Chr(34) & ";" & vbNewLine
    WriteInHead "}" & vbNewLine
End Sub

' --- Temporary strings handling --- '
Public Sub Func_GarbageCore()
    WriteInHead vbNewLine & "// ---------------------------" & vbNewLine & "// Temporary strings handler" & vbNewLine & "// ---------------------------" & vbNewLine
    WriteInHead "char *garbagestring(DWORD StrBytes);" & vbNewLine
    WriteInHead "void initgarbage(void);" & vbNewLine & vbNewLine
    WriteInHead "int GarbagePos;" & vbNewLine
    WriteInHead "char *GarbageArray[0x4000];" & vbNewLine
    WriteInHead vbNewLine
    WriteInHead "char *garbagestring(DWORD StrBytes)" & vbNewLine
    WriteInHead "{" & vbNewLine
    WriteInHead vbTab & "char *CurrentGarbage;" & vbNewLine
    WriteInHead vbTab & "if (GarbageArray[GarbagePos]) free((void *)GarbageArray[GarbagePos]);" & vbNewLine
    WriteInHead vbTab & "CurrentGarbage=(char *)MallocZero(StrBytes+1);" & vbNewLine
    WriteInHead vbTab & "GarbageArray[GarbagePos]=CurrentGarbage;" & vbNewLine
    WriteInHead vbTab & "GarbagePos=(GarbagePos+1)&0x3fff;" & vbNewLine
    WriteInHead vbTab & "return CurrentGarbage;" & vbNewLine
    WriteInHead "}" & vbNewLine
    WriteInHead "void initgarbage(void)" & vbNewLine
    WriteInHead "{" & vbNewLine
    WriteInHead vbTab & "GarbagePos=0;" & vbNewLine
    WriteInHead vbTab & "memset(&GarbageArray,0,sizeof(GarbageArray));" & vbNewLine
    WriteInHead "}" & vbNewLine
End Sub

' --- String concatenations replaced by C++ operator overload --- '
Public Sub Func_OverLoadCore()
    WriteInHead vbNewLine & "// ---------------------------" & vbNewLine & "// Strings handling replacements " & vbNewLine & "// ---------------------------" & vbNewLine
    WriteInHead "char *DblToStr(double);" & vbNewLine
    WriteInHead "char *SngToStr(float);" & vbNewLine
    WriteInHead "char *DWORDToStr(DWORD);" & vbNewLine
    WriteInHead "char *IntToStr(int);" & vbNewLine
    WriteInHead "class VBStr" & vbNewLine
    WriteInHead "{" & vbNewLine
    WriteInHead vbTab & "public:" & vbNewLine
    WriteInHead vbTab & vbTab & "VBStr(char * lv) { RealVBStr = lv; }" & vbNewLine
    WriteInHead vbTab & vbTab & "VBStr(double lv) { RealVBStr = DblToStr(lv); }" & vbNewLine
    WriteInHead vbTab & vbTab & "VBStr(float lv) { RealVBStr = SngToStr(lv); }" & vbNewLine
    WriteInHead vbTab & vbTab & "VBStr(DWORD lv) { RealVBStr = DWORDToStr(lv); }" & vbNewLine
    WriteInHead vbTab & vbTab & "VBStr(int lv) { RealVBStr = IntToStr(lv); }" & vbNewLine
    WriteInHead vbTab & vbTab & "char *Val()" & vbNewLine
    WriteInHead vbTab & vbTab & "{" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "return RealVBStr;" & vbNewLine
    WriteInHead vbTab & vbTab & "}" & vbNewLine
    
    WriteInHead vbTab & vbTab & "friend char *operator>>(char *StringLeft, VBStr &StringRight)" & vbNewLine
    WriteInHead vbTab & vbTab & "{" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "char *StrMeltTmp;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "int StrMeltLen;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltLen=strlen(StringLeft);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltTmp=garbagestring(strlen(StringRight.Val())+StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "strncpy(StrMeltTmp,StringLeft,StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "return strcat(StrMeltTmp,(char *)StringRight.Val());" & vbNewLine
    WriteInHead vbTab & vbTab & "}" & vbNewLine
    WriteInHead vbTab & vbTab & "friend char *operator>>(VBStr &StringLeft, char *StringRight)" & vbNewLine
    WriteInHead vbTab & vbTab & "{" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "char *StrMeltTmp;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "int StrMeltLen;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltLen=strlen(StringRight);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltTmp=garbagestring(strlen(StringLeft.Val())+StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "strncpy(StrMeltTmp,StringLeft.Val(),StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "return strcat(StrMeltTmp,StringRight);" & vbNewLine
    WriteInHead vbTab & vbTab & "}" & vbNewLine
    
    WriteInHead vbTab & vbTab & "friend char *operator>>(double StringLeft, VBStr &StringRight)" & vbNewLine
    WriteInHead vbTab & vbTab & "{" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "char *StrMeltTmp;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "char *StringLeftTmp;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "int StrMeltLen;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StringLeftTmp=DblToStr(StringLeft);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltLen=strlen(StringLeftTmp);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltTmp=garbagestring(strlen(StringRight.Val())+StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "strncpy(StrMeltTmp,StringLeftTmp,StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "return strcat(StrMeltTmp,(char *)StringRight.Val());" & vbNewLine
    WriteInHead vbTab & vbTab & "}" & vbNewLine
    WriteInHead vbTab & vbTab & "friend char *operator>>(VBStr &StringLeft, double StringRight)" & vbNewLine
    WriteInHead vbTab & vbTab & "{" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "char *StrMeltTmp;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "char *StringRightTmp;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "int StrMeltLen;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StringRightTmp=DblToStr(StringRight);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltLen=strlen(StringRightTmp);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltTmp=garbagestring(strlen(StringLeft.Val())+StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "strncpy(StrMeltTmp,StringLeft.Val(),StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "return strcat(StrMeltTmp,StringRightTmp);" & vbNewLine
    WriteInHead vbTab & vbTab & "}" & vbNewLine
    
    WriteInHead vbTab & vbTab & "friend char *operator>>(float StringLeft, VBStr &StringRight)" & vbNewLine
    WriteInHead vbTab & vbTab & "{" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "char *StrMeltTmp;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "char *StringLeftTmp;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "int StrMeltLen;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StringLeftTmp=SngToStr(StringLeft);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltLen=strlen(StringLeftTmp);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltTmp=garbagestring(strlen(StringRight.Val())+StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "strncpy(StrMeltTmp,StringLeftTmp,StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "return strcat(StrMeltTmp,(char *)StringRight.Val());" & vbNewLine
    WriteInHead vbTab & vbTab & "}" & vbNewLine
    WriteInHead vbTab & vbTab & "friend char *operator>>(VBStr &StringLeft, float StringRight)" & vbNewLine
    WriteInHead vbTab & vbTab & "{" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "char *StrMeltTmp;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "char *StringRightTmp;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "int StrMeltLen;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StringRightTmp=SngToStr(StringRight);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltLen=strlen(StringRightTmp);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltTmp=garbagestring(strlen(StringLeft.Val())+StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "strncpy(StrMeltTmp,StringLeft.Val(),StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "return strcat(StrMeltTmp,StringRightTmp);" & vbNewLine
    WriteInHead vbTab & vbTab & "}" & vbNewLine
    
    WriteInHead vbTab & vbTab & "friend DWORD operator>>(DWORD StringLeft, VBStr &StringRight)" & vbNewLine
    WriteInHead vbTab & vbTab & "{" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "char *StrMeltTmp;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "char *StringLeftTmp;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "int StrMeltLen;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StringLeftTmp=(char *)StringLeft;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltLen=strlen(StringLeftTmp);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltTmp=garbagestring(strlen(StringRight.Val())+StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "strncpy(StrMeltTmp,StringLeftTmp,StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "return (DWORD) strcat(StrMeltTmp,(char *)StringRight.Val());" & vbNewLine
    WriteInHead vbTab & vbTab & "}" & vbNewLine
    WriteInHead vbTab & vbTab & "friend char *operator>>(VBStr &StringLeft, DWORD StringRight)" & vbNewLine
    WriteInHead vbTab & vbTab & "{" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "char *StrMeltTmp;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "char *StringRightTmp;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "int StrMeltLen;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StringRightTmp=DWORDToStr(StringRight);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltLen=strlen(StringRightTmp);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltTmp=garbagestring(strlen(StringLeft.Val())+StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "strncpy(StrMeltTmp,StringLeft.Val(),StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "return strcat(StrMeltTmp,StringRightTmp);" & vbNewLine
    WriteInHead vbTab & vbTab & "}" & vbNewLine
    
    WriteInHead vbTab & vbTab & "friend int operator>>(int StringLeft, VBStr &StringRight)" & vbNewLine
    WriteInHead vbTab & vbTab & "{" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "char *StrMeltTmp;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "char *StringLeftTmp;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "int StrMeltLen;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StringLeftTmp=IntToStr(StringLeft);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltLen=strlen(StringLeftTmp);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltTmp=garbagestring(strlen(StringRight.Val())+StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "strncpy(StrMeltTmp,StringLeftTmp,StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "return (int) strcat(StrMeltTmp,(char *)StringRight.Val());" & vbNewLine
    WriteInHead vbTab & vbTab & "}" & vbNewLine
    WriteInHead vbTab & vbTab & "friend char *operator>>(VBStr &StringLeft, int StringRight)" & vbNewLine
    WriteInHead vbTab & vbTab & "{" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "char *StrMeltTmp;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "char *StringRightTmp;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "int StrMeltLen;" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StringRightTmp=IntToStr(StringRight);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltLen=strlen(StringRightTmp);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "StrMeltTmp=garbagestring(strlen(StringLeft.Val())+StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "strncpy(StrMeltTmp,StringLeft.Val(),StrMeltLen);" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "return strcat(StrMeltTmp,StringRightTmp);" & vbNewLine
    WriteInHead vbTab & vbTab & "}" & vbNewLine
    
    WriteInHead vbTab & "private:" & vbNewLine
    WriteInHead vbTab & vbTab & "char *RealVBStr;" & vbNewLine
    WriteInHead "};" & vbNewLine
End Sub

' --- Power operation replaced by C++ operator overload --- '
Public Sub Func_PowerCore()
    WriteInHead vbNewLine & "// ---------------------------" & vbNewLine & "// Power operation replacement" & vbNewLine & "// ---------------------------" & vbNewLine
    WriteInHead "class VBPow" & vbNewLine
    WriteInHead "{" & vbNewLine
    WriteInHead vbTab & "public:" & vbNewLine
    WriteInHead vbTab & vbTab & "VBPow(double lv)" & vbNewLine
    WriteInHead vbTab & vbTab & "{" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "RealVBPow = lv;" & vbNewLine
    WriteInHead vbTab & vbTab & "}" & vbNewLine
    WriteInHead vbTab & vbTab & "double Val()" & vbNewLine
    WriteInHead vbTab & vbTab & "{" & vbNewLine
    WriteInHead vbTab & vbTab & vbTab & "return RealVBPow;" & vbNewLine
    WriteInHead vbTab & vbTab & "}" & vbNewLine
    WriteInHead vbTab & "private:" & vbNewLine
    WriteInHead vbTab & vbTab & "double RealVBPow;" & vbNewLine
    WriteInHead "};" & vbNewLine
    WriteInHead "double operator<<(double OpLeft, VBPow OpRight)" & vbNewLine
    WriteInHead "{" & vbNewLine
    WriteInHead vbTab & "return pow(OpLeft,OpRight.Val());" & vbNewLine
    WriteInHead "}" & vbNewLine
End Sub

' --- UBound() function --- '
Public Sub Func_UBoundCore()
    WriteInHead vbNewLine & "// --------------------------- UBound() function" & vbNewLine
    WriteInHead "__inline DWORD ubound(DWORD);" & vbNewLine
    WriteInHead "__inline DWORD ubound(DWORD Req)" & vbNewLine
    WriteInHead "{" & vbNewLine
    WriteInHead vbTab & "return VBRequestedArrayBound;" & vbNewLine
    WriteInHead "}" & vbNewLine
End Sub

' --- LBound() function --- '
Public Sub Func_LBoundCore()
    WriteInHead vbNewLine & "// --------------------------- LBound() function" & vbNewLine
    WriteInHead "__inline DWORD lbound(DWORD);" & vbNewLine
    WriteInHead "__inline DWORD lbound(DWORD Req)" & vbNewLine
    WriteInHead "{" & vbNewLine
    WriteInHead vbTab & "return 0;" & vbNewLine
    WriteInHead "}" & vbNewLine
End Sub

' --- GetAttr() function --- '
Public Sub Func_GetAttrCore()
    WriteInHead vbNewLine & "// --------------------------- GetAttr() function" & vbNewLine
    WriteInHead "__inline DWORD GetAttr(char *);" & vbNewLine
    WriteInHead "__inline DWORD GetAttr(char *FileName)" & vbNewLine
    WriteInHead "{" & vbNewLine
    WriteInHead vbTab & "return(GetFileAttributes(FileName));" & vbNewLine
    WriteInHead "}" & vbNewLine
End Sub

' --- VBGetDirectory() function --- '
Public Sub Func_VBGetDirectoryCore()
    WriteInHead vbNewLine & "// --------------------------- VBGetDirectory()

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -