Nella mia applicazione, vorrei poter eseguire un file con un nome e un'estensione arbitrari utilizzando il programma associato a un'estensione diversa.Come eseguire un file con un'applicazione associata a un'altra estensione?
Ad esempio, supponiamo di avere un file chiamato file.dat
, ma ho voluto aprirlo con Blocco note, come se fosse denominato file.txt
o file.dat.txt
. Inoltre, non ho il permesso di rinominare il file, quindi è fuori questione.
Se il file era chiamato file.txt
, potrei chiamare ShellExecute. Ma ciò non riesce quando si chiama file.dat
; Windows lamenta che non esiste alcuna associazione per quel file.
Non voglio eseguire l'hardcode di un eseguibile specifico, perché (nell'esempio sopra) l'utente finale avrebbe potuto associare i file .txt
a Wordpad anziché a Blocco note. In tal caso, vorrei che il mio file.dat
venga aperto con Wordpad.