Except for already mentioned
--help, reading documentation and googling there is no standard way to do it. Unfortunately, some programs don't document their switches well - there is (almost) nothing that can be done with those.
This is why: each program analyzes its command line completely differently, and even having switches is just an agreement that most authors tend to follow: some have /dos style switches, some are -uNIX style, some use --gnu-long-style=switches, and some just don't understand any, taking the first thing they see as a file name.
So, parameter analyzis is a part of program code, and so to know what parameters the program actually accepts you would need to read its source code, which you normally do not even have.
The only other option is to disassemble the program in question.
Disassembly is basicly taking a program apart, instruction by instruction, trying to figure what it tries to do and how. It takes a lot of time and is quite a hard to learn.
Sometimes you can get away with opening your program in a hex editor and searching for a command you know, often somewhere near the end, and then trying anything nearby that looks like a switch.