Καταρχάς το αποθήκευα στα resources (Properties -> Resources -> Files). Από κει και πέρα είναι προσβάσιμο: Properties.Resources.MyPDFFile και είναι byte[].
Εφόσον το πάρεις έτσι, τότε μπορείς να το γράψεις στο δίσκο κάπως έτσι:
using (FileStream stream = new FileStream(FilePath, FileMode.Create))
using (BinaryWriter writer = new BinaryWriter(stream))
{
writer.Write(DataToWrite);
writer.Close();
}
'Οπου FilePath το μέρος που θέλεις να το γράψεις.
Εγώ αυτό που έκανα είναι ότι έλεγχα πρώτα εάν υπάρχει με File.Exists(FilePath) και εάν δεν υπήρχε, τότε το δημιουργούσα ως άνω - αφού πρώτα έλεγχα και το περιεχόμενο αν ήθελα.
Και τέλος, Process.Start όπως ανέφερες.
Είναι λίγο πατέντα βέβαια, αλλά εφ'όσον έχεις το αρχείο έτοιμο, νομίζω ότι είναι καλή λύση - εξαρτάται φυσικά και από το μέγεθος του εκτελέσιμου. Μία καλή προσέγγιση είναι αυτά να τα έχεις σε ένα ξεχωριστό resource dll.
Works for me...
"When the darkness rises up from inside - that is normal.
It's when you reach down to pull it up - that the noxious warnings sound."
Tuzak, Farscape