There is no easy answer to your query.
1. SRT subs are supported both internal to the container and external. it is a time based format and may be opened with a text editor as it is readable. If the file is corrupted or unreadable it will not load. Another common error is that the FPS is missing from the file header causing timing problems. This ranges from the sub slipping in time to full lock ups. Specially true when the sub is not specifically made for the video.
2. VLC has the unique ability to read image files such as .bin and .cue combinations. Most common to this format is a VCD which is MPEG 1 based. MPEG in general does not have good time information and therefore does not work well with external subs. You could try removing the .cue file from the directory. This will force VLC to use the .dat file directly. You must load the .bin file using VLC and not from Windows. At the same time (assuming you use Open File) you must load the sub. Another way of trying this would be to use an emulator or burn the image to disk and then use the .dat file directly.