64-bitowy VB.NET Przydzielanie> 2 GB pamięci RAM (błąd .NET?)

Mam 64-bitową aplikację VB.NET i chcę przydzielić bufor o rozmiarze> 2 GB.

W poniższym kodzie zarówno „new”, jak i „ReDim” rzucają „OverflowException”.

Jak mogę przydzielić bufory> 2 GB, gdy te funkcje akceptują tylko podpisane wartości 32-bitowe?

(Czy to możliwe w C #?)

Edytować - Używam WinXP 64 z 4 GB pamięci RAM.

Dim width As Long = 19005
Dim height As Long = 32768

Dim buffer() As Byte = New Byte((width * height * 4) - 1) {}

Dim size As Long = (width * height * 4) - 1
ReDim buffer(size)

questionAnswers(4)

yourAnswerToTheQuestion