• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 4895
  • Last Modified:

How to replace LENB Function in VB .net

I have an VB6 program tha uses the function LENB
According to the Error Code I get from the VB.net enviroment
"The AscB, ChrB, InstrB, LeftB, LenB, MidB, and RightB functions in Visual Basic 6.0 were string-handling functions that returned their results in bytes. They were used primarily for converting strings for use by double-byte character set languages.
In Visual Basic .NET, encoding and decoding functions in the System.Text namespace replace this functionality. For more information, see Globalizing and Localizing Applications."
If I go to Globalizing and localizing applications
I have read  a lot of information and have not found out how to solve this particular Issue
The code in question is

ReDim arrData(LenB(blnData) - 1)

I'm very new at Vb.net and my training did not include a lot of information in upgrading  VB6 Apps


0
TOPIO
Asked:
TOPIO
  • 4
  • 2
  • 2
1 Solution
 
DotNetLover_BaanCommented:
Dim Len As Int32
Len = MyString.Length()

-Baan
0
 
imu79Commented:
Length gives you the number of characters just like the Len( ) function and not the bytes.

You might want to try this:

Dim bLen as Integer

'per documentation, Marshal.SizeOf( ) returns the unmanaged size of an object in bytes.
bLen = System.InteropServices.Marshal.SizeOf(bInData)
ReDim arrData(bLen - 1)


hope this helps..
Imran.
0
 
TOPIOAuthor Commented:
Dotnetlover: as Imu mentioned Length gives you the number of characters

as far as your code imu79 I get the error
C:\My Documents\Visual Studio Projects\csocket\FTP_Client.NET\CSocket.vb(200):
'InteropServices' is not a member of 'System'.
0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
DotNetLover_BaanCommented:
Sorry about my post... I didn't read the question properly. you want the byte length.... mine will give you number of characters. you can ignore my post..
-Baan
0
 
TOPIOAuthor Commented:
I also tried
ReDim arrData(System.InteropServices.Marshal.SizeOf(bytData) - 1)
and I get the same error
0
 
imu79Commented:
ooops sorry..its  System.Runtime.InteropServices.Marshal.SizeOf( )

or just include this line:

Imports System.Runtime.InteropServices

at the top of your code..

hope this helps..
Imran.
0
 
DotNetLover_BaanCommented:
wait.. I got it...  LenB  is Len() in vb.net

-Baan
0
 
DotNetLover_BaanCommented:
ohhh... I am late..  n e way... this link will be useful to you... :))
http://www.netcoole.com/asp2aspx/vbhtml/vbfuncs.htm

-Baan
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

  • 4
  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now