El código que pusiste no manda ningún error, es más, el bloque try/catch está de más, porque lanzas una HttpException dentro del "try" y luego dentro del "catch" manejas dicha excepción (con que objetivo ¿?). Además ten en cuenta que cada vez que lanzas una excepción tiene un impacto en el rendimiento de tu aplicación, sólo hazlo en los casos que realmente sean necesarios ...
Probé con lo siguiente: Throw New HttpException(404, "Not Found") ' vb
y
esto es lo que produce, me imagino que no quieres algo así, o sí?
Si quieres mandar dicho código de error, entonces puedes modificar las cabeceras de la página:
Código:
Response.Clear();
Response.StatusCode = 404;
Response.End();
Sólo una observación más, no sé para que tipo de usuario estés haciendo la aplicación o sólo estas probando, pero eso de mandar errores de ese tipo al cliente, NO es adecuado ni recomendable (estoy seguro que muchos que visitan el foro, opinarán de la misma forma), en lugar de eso deberías utilizar una página que te permitan mostrar dicho "error" de una manera más elegante "user friendly"
Saludos