Well, you're not going to be able to assemble the number since LabVIEW 7 doesn't support 64-bit integers, as I've already pointed out. You initially said the function
returned a pointer to a U64. If
you're actually talking about the return value of the function I think
you're out of luck, since you're very limited in how you can handle
return values. Even in 8.2 you can only select "void", "numeric", and "string". "numeric" allows me to select a return of U64, but not a pointer to it.
So, assuming you were actually talking about one of the function's
arguments, I put together a quick and dirty DLL that had a "unsigned long long *" (pointer to U64) in one of its arguments. I stuck with 8.2 since even though I have 7.1.1 installed, at least with 8.2 I could compare with the proper handling via U64. When I called the function using a pointer to a U64 I got the value I was setting in the function. When I tried an array of U8s I didn't get a crash (always a good thing), but the values didn't make any sense. There were 8 of them, as expected, but they bore no resemblance to the actual value, or even to the address of the memory location, so I have no idea what was being output.
I'll try to look at this some more tomorrow.