<p>I need to have a single instance application (as per this <a href="https://stackoverflow.com/questions/19147/what-is-the-correct-way-to-create-a-single-instance-application#19326">answer</a>), but it needs to be deployed via click once.</p>

<p>The problem is that I require that click once doesn't automatically detect an update an attempt to load a newer version while the application is running.  If it is running, then I need the other instance to be made active. Usually, when selecting a Click Once link, the very first thing it does is attempt to find an update. I want to intercept this and check for an already running instance <strong>prior</strong> to launching the normal update process.</p>

<p>Does anyone know how this is possible within a Click Once deployment scenario?</p>

I don't think you'll be able to do it quite like this as the check before run is outside of your code.
However you can change the clickonce deployment options to check for updates during code execution.
If you need more control then you can use the
ApplicationDeployment Update
or
CheckForUpdate
methods to have absolute over the update process.