En serio creo que quieres esto:
Más bien lo que pretende hacer es esto:
Mi duda: Puedo añadir una imagen a una ventana de error hecha en un archivo . vbs?
(...)
cambiar la imagen de la ventana de error de windows???
No, no es posible hacer eso que pides mediante un lenguaje de scripting limitado como es VBS. Para ello necesitarías usar la API de Windows, y no puedes usar la API
directamente en VBS (primero tendrías que desarrollar una librería COM en la que hayas implementado el algoritmo que haga uso de la API de Windows, y entonces en tu código de VBS instanciar el objeto COM).
Mediante las funciones de enumeración de ventanas en la API de Windows (ej.
EnumThreadWindows) puedes localizar la ventana de diálogo de un
MsgBox creado por un thread de tu aplicación, y obtener el controlador de dicha ventana. Luego, mediante la función
GetDlgItem puedes obtener el controlador de cualquier ventana hija de la venana de diálogo (ej. la ventana donde se muestra el icono), y con las funciones de mensajería de ventanas (ej.
SendMessage) puedes enviar mensajes de ventana para modificar el comportamiento o ciertos aspectos de personalización de una ventana, por ejemplo en este caso te interesaría enviar el mensaje
STM_SETICON para asignar/reemplazar el icono de un control de icono.
...pero todo esto que acabo de explicar por encima es extremadamente tedioso de llevar a cabo; lo más sensato en cualquier caso y siempre que el lenguaje de programación lo permita sería implementar nuestro propio
MessageBox en forma de una clase instanciable que muestre una ventana de diálogo personalizada. ¿Un buen lenguaje para poder hacerlo?,
VB.NET, o
C#, en cualquiera de los dos puedes hacer uso de la API de Windows y también desarrollar un
MessageBox personalizado a través de la herencia de la clase
System.Windows.Forms.Form, o en su defecto
System.Windows.Forms.CommonDialog.
Saludos.