You may have to installers, one silent and one verbose.
Then make a third installer that runs one of these depending on something. An example script for such function is as follows:
Name Installer checker
; The installer checker is ofcourse silent itself.
StrCmp $1 $2 silent notsilent
You have to fiddle with the example a bit ofcourse...