سلام
هیچ راهی هست که بشه یه مقدار رو که از نوع long هست رو به byte array تبدیل کرد؟
امیدوارم منظور من رو فهمیده باشین.
خودم این رو امتحان کردم نشد:
Dim a As Long
Dim b As Byte
a = 90145
b = CByte(a)
Printable View
سلام
هیچ راهی هست که بشه یه مقدار رو که از نوع long هست رو به byte array تبدیل کرد؟
امیدوارم منظور من رو فهمیده باشین.
خودم این رو امتحان کردم نشد:
Dim a As Long
Dim b As Byte
a = 90145
b = CByte(a)
سلام.
تا اونجایی که من میدونم نمیشه. چون بایت تا 255 رو میگیری واسه این کار باید عددی که تو متغیر لانگ هست کمتر از 255 بشه که عدد به هم میرزه.
سلام
کدی که گذاشتید با سوالی که پرسیدید اصلاً مطابقت ندارد!نقل قول:
هیچ راهی هست که بشه یه مقدار رو که از نوع long هست رو به byte array تبدیل کرد؟
کد:'VB6
Dim x As Long '32Bit=4Byte
Dim y(3) As Byte '8Bit=1Byte
y(0) = CByte(x And &Hff)
y(1) = CByte((x \ &H100) And &Hff)
y(2) = CByte((x \ &H10000) And &Hff)
y(3) = CByte((x \ &H1000000) And &Hff)
'VB7, 8, 9
Dim x As Integer '32Bit=4Byte
Dim y(3) As Byte '8Bit=1Byte
y(0) = CByte(x And &Hff)
y(1) = CByte((x \ &H100) And &Hff)
y(2) = CByte((x \ &H10000) And &Hff)
y(3) = CByte((x \ &H1000000) And &Hff)
یا
Dim x As Integer '32Bit=4Byte
Dim y(3) As Byte '8Bit=1Byte
y(0) = CByte(x And &Hff)
y(1) = CByte((x >> 8) And &Hff)
y(2) = CByte((x >> 16) And &Hff)
y(3) = CByte((x >> 24) And &Hff)
یا
Dim x As Integer '32Bit=4Byte
Dim y() As Byte = {CByte(x And &Hff), CByte((x >> 8) And &Hff), CByte((x >> 16) And &Hff), CByte((x >> 24) And &Hff)}
و...marshal
و...stream
و...offset
و...