ÔÚVB6ÖÐÓÃCopyMemory¿½±´×Ö·û´®µÄÖÖÖÖèÄ壨һ£©
±¾ÎÄÀ´×Ô´ËÌûµÄÈß³¤ÌÖÂÛ£¬¸ÐлTiger_ZhaoµÄÈ«³ÌÖ¸µãºÍ³Â»Ô¡¢°¢Ó¡¢ÂíÔÆ½£µÈºÜ¶àÅóÓѵÄÈÈÐIJÎÓë¡£±¾ÎÄÆäËû²¿·ÖÔÚ£º£¨¶þ£©¡¢£¨Èý£©¡¢£¨ËÄ£©¡£
»°ËµVB6ÊǸöºÜÈÏÕæÏ¸ÖµÄÂèÂ裬Ëü»áÇÄûÉùµØ°ïÄã×öºÜ¶àÊ¡£½ñÌìÎÒÃÇÀ´ËµµÄÊÇVB6ÔÚAPIµ÷ÓÃʱ×Ô¶¯¶Ô×Ö·û´®²ÎÊý½øÐÐת»»µÄ“ºÃÈ˺ÃÊ”¡£
µÚÒ»½Ú ÌåÌùµÄVBÂèÂè
ÎÒÃÇÖªµÀ£¬ÔÚVB6ÖÐ×Ö·û´®¶¼ÊÇÒÔUnicode±àÂë´æÔڵ쬶øWindows APIº¯ÊýÖкܶàʱºòÓõÄÊÇANSI×Ö·û´®¡£VBÂèÂ躦ųÌÐòÔ±ÃÇÀÛ×Å£¬ËùÒÔÔÚVB³ÌÐòÔ±µ÷ÓÃAPIʱ£¬»á×Ô¶¯µÄ¶ÔÆäÖеÄ×Ö·û´®²ÎÊý×öUnicodeµ½ANSIµÄת»»£¨ÒÔϼò³ÆUAת»»£©£¬ÔÚAPIµ÷ÓýáÊøºó»áÔÙ°Ñ×Ö·û´®²ÎÊý×öANSIµ½UnicodeµÄת»»£¨ÒÔϼò³ÆAUת»»£©¡£ÕâÑù˵¿ÉÄÜÓеã³éÏó£¬ÎÒÃÇÀ´¿´ÏÂÃæµÄÀý×Ó¡£'ÕýÈ·µÄByVal StringµÄÓ÷¨
Option Explicit
Const STR_E = "PowerVB"
Private String1 As String
Private String2 As String
Private pString1 As Long
Sub test7()
Dim String1 As String
Dim String2 As String
' Dim _tmp1 As String, _tmp2 As String
String1 = "PowerVB" '14 bytes
String2 = String$(7, 0) '14 bytes
CopyMemory ByVal String2, ByVal String1, 7
' _tmp1 = StrConv(String1, vbfromUnicode) '7 bytes
' _tmp2 = StrConv(String2, vbfromUnicode) '7 bytes
' CopyMemory ByVal _tmp2, ByVal _tmp1, 7
Debug.Print String2
End Sub
ÈçÉÏͼËùʾ£¬µ±ÎÒÃÇÔÚVBÖе÷ÓÃCopyMemory ByVal String2, ByVal String1, 7µÄʱºò·¢ÉúÁËÈçÏÂÊÂÇ飺
¢ÙÊ×ÏÈVBÂèÂè°ïÎÒÃǶÔString1ºÍString2×Ô¶¯×öÁËUAת»»£¬Ò²¾ÍÊÇÏ൱ÓÚ×öÁËÈçÏÂÊÂÇ飺Dim _tmp1 As String, _tmp2 As String
_tmp1 = StrConv(String1, vbfromUnicode) '7 bytes
_tmp2 = StrConv(String2, vbfromUnicode) '7 bytesÒ²¾ÍÊÇ˵£¬Á½¸ö14×Ö½ÚµÄUnicode×Ö·û´®ÏÖÔÚ±»´æÔÚÁ½¸ö7×Ö½ÚµÄANSI×Ö·û´®ÀïÁË¡£
¢ÚÈ»ºóCopyMemoryº¯Êý¾Í×öʵ¼ÊµÄ¿½±´¶¯×÷¡£×¢Ò⣬ÕâʱCopyMemoryµÃµ½µÄ²ÎÊý²»ÊÇString1, String2ÁË£¬¶øÊÇVBÂèÂè´«¸øËüµÄ_tmp1, _tmp2ÁË¡£ËùÒÔ£¬Êµ¼ÊÉÏ£¬CopyMemoryͬѧÊÇÔÚÕâô¸É»î£ºCopyMemory ByVal _tmp2, ByVal _tmp1, 7¡£Ò²¾ÍÊÇ£¬´Ó_tmp1µÄ»º³åÇø¿½±´7¸ö×Ö½Úµ½_tmp2µÄ»º³åÇø¡£
¢ÛCopyMemoryͬѧ¸ÉÍê»î£¬VBÂèÂèÓÖϸÐĵØ×öÉÆºó¹¤×÷¡£Ëü°Ñ_tmp2µÄÄÚÈÝÔÙת³É14×Ö½ÚµÄUnicode×Ö·û´®£¬²¢°ÑËü¸øString2¡£
PS£º
£¨1£© ÎÄ×ÖÖдøÈ
Ïà¹ØÎĵµ£º
ÔÚÎÄÕµ÷ÊÔJavaScript/VB Script½Å±¾³ÌÐò£¨Wscriptƪ£©ÀïÃæ£¬ÓÐÍøÓÑÎÊÎÒÈçºÎµ÷ÊÔASPÀïÃæµÄ½Å±¾³ÌÐò£¬ÎÒ²»ÖªµÀËûÎʵÃÊǵ÷ÊÔASPÍøÒ³ÀïÃæµÄVBScript ASP´úÂ룬»¹ÊÇASP.NETÍøÒ³ÀïÃæµÄJavaScript/VBScript¿Í»§¶Ë´úÂ룬ËùÒÔÎÒ¾ÍÔÚÕâÆªÎÄÕÂÀïÃæÏȽ«µ÷ÊÔASPÍøÒ³ÀïÃæµÄASP´úÂëÕâÖÖÇé¿ö¶¼½âÊÍһϰɡ£
¹À¼ÆASPÕâ¸öÍæÒÕÓõÄÈËÒѾºÜÉÙ ......
¹ØÓÚActiveXµÄ½Ì³Ì
Visual BasicÊÇÃæÏò¶ÔÏóµÄ³ÌÐòÉè¼ÆÓïÑÔ£¬Î¢Èí¹«Ë¾ÍÆ³öÁËActiveX¼¼Êõ£¬ÀûÓÃActiveX¼¼ÊõÌá³öµÄ±ê×¼£¬¶Ô½çÃæµÄÉè¼Æ½øÐÐÁË·â×°£¬ÐγÉÁËһϵÁбà³Ì¿Ø¼þ£¬¼´Ìض¨¹¦ÄܵijÌÐòÄ£¿é¡£ÔÚ³ÌÐòµÄÉè¼ÆÖУ¬Éè¼ÆÈËÔ±Ö»ÐèÒªÍ϶¯ËùÐè¿Ø¼þµ½´°Ì壬Ȼºó¶Ô¿Ø¼þ½øÐÐÊôÐÔÉèÖúÍʹÓÃÆä·½·¨¡¢Ê¼þ¼´¿É£¬´ó´ó¼õÇáÁË·±ËöµÄ³ÌÐòÉè¼Æ¡ ......
ËÄܰïÎÒ°ÑÕâ¶Î´úÂëת³ÉVbµÄ´úÂ룬²»Ê¤¸Ð¼¤£¬Ð»Ð»£¡
void CTempDlg::OnOK()
{
UpdateData(1);
int nlen=m_edit1.GetLength();
char *username=m_edit1.GetBuffer(nlen);//¶¨ÒåÒ»¸öÐÂ×Ö·û´®username,³¤¶ÈΪnlen£¬²¢½«m_edit1ÖеÄ×Ö·û´®Ò»¸ö¸ö·ÅÈëµ½usernameÊý×éÖÐ
char strA[]="90123456 ......
Private Sub PrintTxt(txt As String, ConWidth As Long, LeftPosition As Long)
Dim str As String
Dim str1 As String
Dim len1 As Long
str = txt
len1 = ConWidth
&nbs ......
http://bbs.blueidea.com/viewthread.php?tid=531257
Èç¹ûÏëÁ˽âSOAPµ½µ×ÊÇʲô£¬¾ÍÒª×Ô¼º¶¯ÊÖ½¨Á¢×Ô¼ºµÄSOAP±ê×¼¶ÔÏó¡£±¾ÎÄ¿ÉÒÔ°ïÖúÄãÆð²½¡£
============================================
¼ò½é
SOAP - ¼òµ¥¶ÔÏó´¦ÀíÐÒé(Simple Object Access Protocol) - Êǵ±Ç°XML¿ª·¢µÄÈȵ㡣ËüÊÇ΢ÈíÐÂÒ»´úVisual StudioµÄÖ÷Òª½Ç ......