Come diceva PiTheNumber, non è possibile creare o salvare un file sul disco degli utenti.
Tuttavia, è possibile consentire all'utente di scaricare il file generato in modo che l'utente possa aprirlo con l'applicazione desktop al termine del download.
Questo non è un problema con php, basta inviare le intestazioni giuste e quasi tutti i browser inizieranno il download.
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="'.basename($file).'"'); //<<< Note the " " surrounding the file name
header('Content-Transfer-Encoding: binary');
header('Connection: Keep-Alive');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
Vedi questa SO-domanda per ulteriori informazioni.
Un altro approccio potrebbe essere quello di modificare l'applicazione desktop in modo che invii una richiesta al server (con alcune informazioni, IP pubblico, sistema operativo, browser installati ecc.)
quindi l'utente può accedere al sito Web dopo l'installazione dell'applicazione.
Una terza soluzione possibile potrebbe essere un'estensione del browser scritta per l'autenticazione, quindi il tuo sito web potrebbe essere autorizzato a comunicare direttamente (o su un file) con l'applicazione desktop.