The first problem I had was the Link not showing up as blue and underlined. I fixed that and got the link appearing and functioning with the following code:
Function PageFunction_WelcomeShow
;modify the MUI2 Welcome page to include an installation help link
;create the installation help link
${NSD_CreateLink} 120u 183u 135u 14u "$(Page_Welcome_Link)"
; pop the label HWND off of the stack
Pop $Link_InstallHelp
;welcome page fonts/colors are different from other pages, so force the help link to Blue and the current MUI background color
SetCtlColors $Link_InstallHelp "0x000080" "${MUI_BGCOLOR}"
;font should be Blue now, but it won't be underlined, so we need to fix it.
CreateFont $Link_InstallHelp_font "$(^Font)" "$(^FontSize)" /UNDERLINE
SendMessage $Link_InstallHelp ${WM_SETFONT} $Link_InstallHelp_font 0
GetFunctionAddress $R0 PageFunction_Welcome_LinkClick
nsDialogs::OnClick $Link_InstallHelp $R0
FunctionEnd ;PageFunction_WelcomeShow The only problem I have is that it seems that the MUI Welcome label control extends down and slightly overlaps the link control that I have created.In other programming languages, I can use a .SendToFront command on a control to fix this, but after much searching and source code dumpster-diving, I haven't been able to figure it out in NSIS and MUI and nsDialogs.
How does one send a control to the front on the MUI2 Welcome page via nsDialogs or with SendMessage? Is there some other solution I can use?