The BASS_VST.H header in the current release doesn't mention it, but "param2" contains the high 32 bits of a 64-bit pointer. So the example code in that file can be modified like this:
* DWORD myCallback(DWORD vstHandle, DWORD action, DWORD param1, DWORD param2, void* user)
* {
* if( action == BASS_VST_AUDIO_MASTER )
* {
* BASS_VST_AUDIO_MASTER_PARAM* audioMaster;
* if (sizeof(void*) == 8)
* audioMaster = (BASS_VST_AUDIO_MASTER_PARAM*)(param1 + ((QWORD)param2 << 32));
* else
* audioMaster = (BASS_VST_AUDIO_MASTER_PARAM*)param1;
* if( audioMaster->opcode == audioMasterOpenFileSelector )
* {
* openMyFileSelector((VstFileSelect*)audioMaster->ptr);
* audioMaster->doDefault = 0;
* return 1;
* }
* }
* return 0;
* }