Pregunta

Considere un cuadro de mensaje para solicitar al usuario que si contestar o no. Funciona en nuestras máquinas de XP y una máquina de compilación de Windows 7.

Sin embargo, no funciona en nuestra máquina Windows Embedded 7. No hay ningún mensaje de error, no hay MessageBox aparece. Simplemente asume que el usuario hace clic en el botón Sí porque no puedo encontrar el archivo de depuración creado a partir de ahí y createDatabase(); se llama sin ningún messageBox por delante de él.

Me puede encontrar el conjunto (System.Windows.Forms.dll) que es requerido por el cuadro de mensaje. Es en la misma ubicación que nuestra máquina de compilación de Windows 7. ¿tiene usted alguna idea de por qué? gracias

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();
}
¿Fue útil?

Solución

este puesto, que podría desactivar el componente "cuadro de mensaje predeterminado Responder" de Windows 7 Embedded. Más detalles se pueden encontrar en MSDN .

Otros consejos

La palabra clave aquí es "incrustado". Tales versiones de Windows son a menudo configurados para ejecutarse cabeza-less (sin monitor) o optimizado para trabajar sin que nadie cerca. A MessageBox es veneno para tal configuración a. La máquina deja de funcionar y nadie puede averiguar por qué.

Es necesario volver a su constructor del sistema y encontrar la opción de que los controles de esto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top