Para la certificación 8 aplicación de Windows, hay (entre otros) los siguientes requisitos:Habilitar el control de excepciones de seguridad en C++ Builder
- 3,2 Su aplicación debe ser compilado usando la bandera
/SafeSEH
para asegurar excepciones segura Manipulación - 3.3 su aplicación debe ser compilado usando la bandera
/NXCOMPAT
para evitar la ejecución de datos - 3.4 su aplicación debe ser compilado usando la bandera
/DYNAMICBASE
para la aleatorización dirección de espacio de diseño (ASLR)
No pude encontrar la manera de habilitar ninguno de estos en C++ Builder XE.
Para /NXCOMPAT
y /DYNAMICBASE
, se puede utilizar editbin.exe
de VS o peflags.exe
de Cygwin. Aunque me sentiría más seguro acerca de posibles efectos secundarios, si hubiera una manera nativa de habilitarlos.
De todos modos, estoy totalmente en pérdida con respecto a /SafeSEH
.
Ciertamente Delphi XE2 no produce ejecutables con [Safe Exception Handler Tables] (http://www.jwsecure.com/2007/07/06/the-safe-exception-handler-table/). No tengo CPPBuilder para verificar eso, pero apostaría que no. Creo que no tendrás suerte y deberías enviar una solicitud de control de calidad. En realidad, es posible que los manipuladores de excepciones estructurados sean seguros, pero eso no es muy útil si los archivos PE no están marcados para decirlo. Sus aplicaciones de 64 bits estarán bien, pero eso tampoco es posible aún en CPPBuilder. –
Informe de CC relevante: http://qc.embarcadero.com/wc/qcmain.aspx?d=106781 –