ULong Data Type (Visual Basic)
Updated: July 20, 2015
For the latest documentation on Visual Studio 2017, see Visual Studio 2017 Documentation.
Holds unsigned 64-bit (8-byte) integers ranging in value from 0 through 18,446,744,073,709,551,615 (more than 1.84 times 10 ^ 19).
ULong data type to contain binary data too large for
UInteger, or the largest possible unsigned integer values.
The default value of
ULong is 0.
Negative Numbers. Because
ULongis an unsigned type, it cannot represent a negative number. If you use the unary minus (
-) operator on an expression that evaluates to type
ULong, Visual Basic converts the expression to
CLS Compliance. The
ULongdata type is not part of the Language Independence and Language-Independent Components (CLS), so CLS-compliant code cannot consume a component that uses it.
Interop Considerations. If you are interfacing with components not written for the .NET Framework, for example Automation or COM objects, keep in mind that types such as
ulongcan have a different data width (32 bits) in other environments. If you are passing a 32-bit argument to such a component, declare it as
ULongin your managed Visual Basic code.
Furthermore, Automation does not support 64-bit integers on Windows 95, Windows 98, Windows ME, or Windows 2000. You cannot pass a Visual Basic
ULongargument to an Automation component on these platforms.
ULongdata type widens to
Double. This means you can convert
ULongto any of these types without encountering a System.OverflowException error.
Type Characters. Appending the literal type characters
ULto a literal forces it to the
ULonghas no identifier type character.
Framework Type. The corresponding type in the .NET Framework is the System.UInt64 structure.