OpenCandy Recommendation plug-in

From NSIS Wiki

Author: Adrianbourke (talk, contrib)


OpenCandy enables you to recommend software or services you believe would be valuable to your users. The recommendation takes place during the installation of your software (ie. in your NSIS installer) through an additional page.

No Bundling

Recommended software is dynamically downloaded after a user accepts the recommendation, which results in the elimination of bundling lots of unwanted software with your installer. Our plug-in comes in at >400KB, and is the only thing that needs to be included with your installer.

Get Paid

More than beer money! You can generate significant revenue by participating in the OpenCandy network. Best of all, you don't have to sell your soul (or your users') to do so.


You choose the software you want to recommend. You can do it for free, to earn money or a combination of the two. Plus, you can change recommendations at any time without rebuilding your installer.

Always Opt-in

All recommendations are opt-in. Your users will not end up with software they don't want simply by clicking 'Next' or 'Install'.

More information at


See the Integration Guide at Documentation\Integration_Guide.pdf.


v1.2.2 - 19 June 2009

  • First version.


OpenCandy Publisher Kit v1.2.2 (2009-06-17)


!include "OCSetupHlp.nsh"
; Declare the OpenCandy Offer page
PageEx custom
 PageCallbacks OpenCandyPageStartFn OpenCandyPageLeaveFn 
; OnInit
Function .onInit
; ****** OpenCandy START ******
;Note: Please change the key and secret on this line to the ones assigned for your specific products
  !insertmacro OpenCandyInit "OpenCandy Sample" "Key" "Secret" "Software\OpenCandy\OpenCandy Sample"
; ****** OpenCandy END ******
; OnInstSuccess
Function .onInstSuccess
; ****** OpenCandy START ******
  !insertmacro OpenCandyOnInstSuccess
; ****** OpenCandy END ******
; OnGUIEnd
Function .onGUIEnd
; ****** OpenCandy START ******
  !insertmacro OpenCandyOnGuiEnd
; ****** OpenCandy END ******
; The install section
Section "${PRODUCT_NAME}" SecCopyUI
; ****** OC START *****
  !insertmacro OpenCandyInstallDLL	
; ****** OC END ******
SectionEnd ; end the section
; Uninstall Section
Section Uninstall
; ******* OC START *****
  !insertmacro OpenCandyProductUninstall "794c45813d09053e66110a74ce3ee33c"
; ******* OC END *******
Personal tools