Вот примеры моих простеньких плагинов, которые мне понадобились при создании некоторых инсталляшек, с исходниками (под VS 2003) -
http://vampik.net.ru/files/time.7z
http://vampik.net.ru/files/proc.7z
http://vampik.net.ru/files/cpu.7z
И таких при необходимости можно настрочить десятками.
В принципе, отдельные функции из библиотек можно вызывать и стандартными средствами, часто используемый пример -
Код:

System::Call 'shell32::SHChangeNotify(i 0x08000000, i 0, i 0, i 0) v'
(для обновления значков после смены ассоциаций)
A LogicLib.nsh позволяет писать NSIS-скрипты с использованием конструкций типа if...else, switch...case...endswitch, select...case...endselect, операторов do, while, for.
Скрипт для Winamp у меня для себя есть, но пока очень простой - только установка всех файлов, кроме Winamp Agent, запись данных в реестр, подхватывание серийника из ini-файла и ярлыки в меню "Пуск". Никаких ассоциаций файлов, параметров и т.п.