...and here's how. I looked around for how to do this, before, and couldn't seem to find anything. I was doing some late night tinkering, and somehow managed to figure this out. Hope it helps everybody. 
------------------
Software: Win XP Pro SP2, PB/Win 7.04, PBCC 4.02, PB Forms 1.5, Win32API.zip v.02-01-05
Hardware: AMD Athlon 64 3200+ (Clock speed 2.00 GHz) on a Gigabyte K8N Pro nForce3-150 mobo, 1 GB PC3200/DDR400 RAM, GeForce 5 LE 128 MB DDR video
[This message has been edited by Eric Cochran (edited November 03, 2005).]

Code:
#compile exe #dim all type myType pString as string ptr 'pString = ptr->string (string array descriptor, here) end type sub resizeIt( _ 'Just a sub to demonstrate redim'ing... byref test() as string, _ ' PB wants a pointer to the descriptor newSize as dword ) redim test( newSize ) 'Works like a champ. [img]http://www.powerbasic.com/support/forums/smile.gif[/img] end sub function pbmain () as long redim stringData ( 5 ) as string local this as myType this.pString = varptr( stringData() ) 'Normally you'd probably want to point 'to individual elements, but here we 'just want the descriptor's address. #if %def(%pb_cc32) print ubound( stringData() ) #else MSGBOX ubound( stringData() ) #endif resizeIt( byval this.pString, 10 ) 'It's VERY important that you pass the ptr 'to the descriptor byval in order to dodge 'a parameter mismatch error #if %def(%pb_cc32) print ubound( stringData() ) waitkey$ #else MSGBOX ubound( stringData() ) #endif end function
------------------
Software: Win XP Pro SP2, PB/Win 7.04, PBCC 4.02, PB Forms 1.5, Win32API.zip v.02-01-05
Hardware: AMD Athlon 64 3200+ (Clock speed 2.00 GHz) on a Gigabyte K8N Pro nForce3-150 mobo, 1 GB PC3200/DDR400 RAM, GeForce 5 LE 128 MB DDR video
[This message has been edited by Eric Cochran (edited November 03, 2005).]
Comment