說明:
lstrcpy 函式可將字串複製到一記憶體空間
引用函式庫:
Kernel32
適用系統:
Windows NT 3.1 或 Windows 95以上
函式原型:
Declare Function lstrcpy Lib "kernel32" Alias "lstrcpyA" ( _ ByVal lpString1 As String, _ ByVal lpString2 As String _ ) As Long
參數型態及說明:
lpString1:String 要存放字串的記憶體空間
lpString2:String 要放到記憶體空間的字串
回傳值:
Long 若呼叫成功的話,將會回傳複製到記憶體空間的指標位置;若呼叫失敗的話,則回傳 NULL
.NET Framework API:
System.String.CopyTo
System.String.ToCharArray
VB範例:
檢視原始碼 Visual Basic
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | 'VB的宣告 Private Declare Function lstrcpy Lib "kernel32" Alias "lstrcpyA" ( _ ByVal lpString1 As String, _ ByVal lpString2 As String _ ) As Long '宣告一個記憶體空間 Dim str As String str = String(200, 0) Dim rtvl As Long '把Windwos API複製到str中 rtvl = lstrcpy(str, "Windows API") |
RB範例:
檢視原始碼 REALBasic
1 2 3 4 5 6 7 8 9 10 11 12 13 | 'RB的宣告 Declare Function lstrcpy Lib "kernel32" Alias "lstrcpyA" ( _ lpString1 As Ptr, _ lpString2 As CString _ ) As Integer '宣告一個記憶體空間 Dim str As New MemoryBlock(200) Dim rtvl As Integer '把Windwos API複製到str中 rtvl = lstrcpy(str, "Windows API") |
VB.NET範例:
檢視原始碼 VB.NET
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | 'VB.NET的宣告 <DllImport("kernel32.dll")> _ Shared Function lstrcpy( _ ByVal lpString1 As StringBuilder, _ ByVal lpString2 As String _ ) As IntPtr End Function '宣告一個StringBuilder Dim str As New StringBuilder() Dim rtvl As IntPtr '把Windwos API複製到str中 rtvl = lstrcpy(str, "Windows API") |
C#範例:
檢視原始碼 C#
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | //C#的宣告 [DllImport("kernel32")] public static extern IntPtr lstrcpy( StringBuilder lpString1, string lpString2 ); //宣告一個StringBuilder StringBuilder str = new StringBuilder(); IntPtr rtvl; //把Windwos API複製到str中 rtvl = lstrcpy(str, "Windows API"); |