jueves, 29 de enero de 2009

NECESITAS UN OFUSCADOR PARA .NET?

El artículo original fue escrito el 07-Feb-07.

Recuerdan la segunda parte de la serie "Deploying Games To The 360 Without Sharing Source Code" -relacionada a la ofuscación de ensamblados de .NET?

Bueno, si no están interesados en la materia sólo ignoren esta publicación. De lo contrario, sigan leyendo ...

He buscado en Internet por algúnos ofuscadores y esto es lo que he encontrado hasta ahora:

Algúnos de los sitios de los vendedores sí incluyen cuadros comparativos pero desafortunadamente no pude encontrar cuadros comparativos "hechos por usuarios". Entonces, como es habitual terminamos en un escenario "prueba-la-demo-antes-de-comprar" a fin de encontrar el que llena nuestras necesidades adecuadamente para la protección de código.

Por cierto, la lista de arriba tiene como finalidad ser una referencia "dinámica", por lo que si por algúna razón falta un ofuscador -lo siento por ello, sólo avísenme y lo agrego a la lista lo antes posible.

Además, si conocen bien una o varias de estas aplicaciones -porque las usan o las usaron- y quieren compartir sus opiniones son bienvenidos a publicar sus comentarios.

Espero que esto les sea de ayuda!

RECUPERANDO PLANTILLAS DE PROYECTO DE VISUAL C# EXPRESS

El artículo original fue escrito el 12-Dic-06.

Luego de instalar XNA GSE v1 me di cuenta por casualidad que las plantillas de proyecto que trae por defecto la versión express de VS C# - esto es, Windows Application, Class Library, Console Application, etc. - habían desaparecido del navegador de plantillas del IDE ... :(

Mi primer movimiento desesperado era desinstalar y reinstalar todo (por supuesto, luego de un fuerte grito of terror), pero antes de saltar a la piscina dónde talvez no había nada de agua, pensé (y vean cuán astuto soy): "Bueeeno! Talvez sea tiempo de mirar algo de TV ...", pero agregando casi instantáneamente: "... pero primero busquemos un poco en los foros de MSFT por algúnas respuestas, culpémos a otros y otras tareas comúnes diarias ...".

Para mi sorpresa encontré no uno sino dos discuciones relacionadas a un asunto similar lo cual me brindó una pista acertada sobre la solución alternativa. Y como nos aproximámos a la víspera de Navidad lo voy a compartir con todos Uds. ...

La solución es simple, simplemente ejecuten la siguiente línea -tanto en el command shell (cmd.exe) como llamando con la barra de búsqueda del explorador de Windows a "start > run":

"%vs80comntools%\..\..\common7\ide\vcsexpress.exe" /installvstemplates

Por supuesto, deberán remplazar "%vs80comntools%\..\..\common7\ide\vcsexpress.exe" con el camino correcto a "vcexpress.exe" en sus máquinas locales.

Si bien esto debería funcionar, puede surgir un problema: las plantillas podrían seguir desaparecidas para el navegador de plantillas del IDE (esto sucedió en mi caso, lo cual significa, otro grito de terror). No hay problema! Si abren la carpeta donde "vcexpress.exe" está alojado también encontrarán un directorio llamado "VCSExpress", cierto?

Si no es así, contacten a su administrador local, quien les recomendará que (des/re)instalen todo.

Si la encontraron, abran la carpeta "ProjectTemplates" y luego "1033" folder donde verán al menos 4 archivos zip (usualmente 6) conteniendo las plantillas faltantes. Copien estos archivos zip a "ProjectTemplates", ejecuten de nuevo la línea de comando antedicha y voilá! El IDE ahora reconoce todas las plantillas de proyecto instaladas.

Parece que el proceso de instalación de XNA GSE modifica de algún modo el archivo de "cache" ubicado en la carpeta llamada "ProjectTemplatesCache" que todas las plantillas de projecto instaladas dentro de la carpeta "ProjectTemplatesCache\1033" son ignoradas.

Entonces, luego de aplicar la solución alternativa mencionada en este artículo encontrarán que las plantillas recuperadas están duplicadas en el directorio "ProjectTemplatesCache" (esto es, 6 dentro y 6 fuera de la carpeta "1033") hasta que un grupo de MSFT arregle los futuros instaladores de las próximas versiones de XNA GSE ... ;)

Nos vemos!

MANAGED DIRECTX Y WINDOWS XP PRO 64-BITS

El artículo original fue escrito el 14-Set-06.

Como muchos de Uds. deben saber, no hay aún soporte para MDX en una plataforma x64. Por lo que, a efectos de correr cualquier programa de MDX, la plataforma objetivo debería configurarse en "x86" (esto es, 32 bits).

Para usuarios de WinXP Pro x64 que quieran correr código gestionado de DirectX con Visual Sudio 2005 (también aplica a el framework de XNA) -en cualquiera de sus ediciones, sepan que hay dos formas posibles de evitar esa horrible excepción "Bad image format".

Tal cual mencionado en el blog de Benjamin Nitschke, la primera forma es modificando el archivo "csproj" con el Bloc de Notas. Sólo encuentren y abran el archivo y luego agreguen la siguiente línea:

<PlatformTarget>x86</PlatformTarget>

(si el "nodo" ya existe, sólo remplácenlo por lo mencionado arriba).

La segunda forma es usando el IDE de VS en sí mismo. Sigan este vínculo por más instrucciones.

No cambien de canal!