Domanda

Si consideri un MessageBox per richiedere all'utente di sì rispondere o no. Funziona in nostre macchine XP e una macchina Windows 7 build.

Tuttavia, non funziona sul nostro Windows 7 macchina embedded. Non v'è alcun messaggio di errore, no show up MessageBox. Si presuppone solo l'utente fa clic sul pulsante Sì perché posso trovare il file di debug creata da lì e createDatabase(); si chiama senza alcun messageBox davanti a sé.

riesco a trovare l'assemblea (System.Windows.Forms.dll) che è richiesto dal MessageBox. E 'nella stessa posizione come la nostra macchina di build di Windows 7. hai qualche idea del perché? grazie

DialogResult result = System.Windows.Forms.MessageBox.Show(
    "Do you want to update your database?\nWarning: All your data will be erased if you click Yes !",
"Update Database",
MessageBoxButtons.YesNo,
MessageBoxIcon.Question);

if (result == DialogResult.Yes)
{
    string[] cmdLines2 = { @"C:\AndeDB\AndeDB.db is here and selected yes" };
    //it will create, open and write or overwrite
    File.WriteAllLines(@"C:\Temp\dbcheck2.txt", cmdLines2);
    createDatabase();
}
È stato utile?

Soluzione

questo post, potrebbe disabilitare il componente "Message Box default risposta" da Windows 7 incorporato. Ulteriori dettagli possono essere trovati sul MSDN .

Altri suggerimenti

La parola chiave qui è "embedded". Tali versioni di Windows sono spesso configurati per run testa-less (senza monitor) o ottimizzati per il lavoro senza che nessuno vicino. Un MessageBox è veleno per la configurazione tale. La macchina smette di funzionare e nessuno può scoprire perché.

È necessario tornare al system builder e trovare l'opzione che controlla questo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top