![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Pues tienes razón David. Ya lo he probado yo mismo y funciona como dices.
// Saludos |
|
#2
|
||||
|
||||
|
A todo esto, ¿que c#ing@o$ es el XP Manifiesto ese??? pa que sirve o que onda??... me sirve de algo si estoy trabajando con Delphi2007 que según ya es para Vista y no para XP ???? o que onda?
__________________
"Hey, nena, debe ser genial ser tú y verme a mí mismo..." |
|
#3
|
||||
|
||||
|
Hola,
Existe una unidad en Delphi 7 de nombre "XpMan.pas". Esta unidad se limita exclusivamente a añadir al ejecutable (como un recurso más) el archivo "WindowsXP.res", que puede encontrarse en: "C:\Archivos de programa\Borland\Delphi7\Lib". Pues bien, dicho archivo ".res" contiene el siguiente XML: Código:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
type="win32"
name="DelphiApplication"
version="1.0.0.0"
processorArchitecture="*"/>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
publicKeyToken="6595b64144ccf1df"
language="*"
processorArchitecture="*"/>
</dependentAssembly>
</dependency>
</assembly>
¿Si te sirve de algo en Delphi 2007? Ignoro siquiera si se incluye la unidad "XpMan.pas", empero, a no ser que se incluya el recurso "WindowsXP.res" por defecto en los ejecutables (cosa que dudo, pero por pura intuición), si quieres que tu programa adopte el tema de Windows XP... deberá usarse igual que en Delphi 7, por ejemplo. En general podría decirse que cualquier ejecutable (de Delphi o de otro lenguaje/entorno) que contenga el XML referido (como un recurso más dentro del ejecutable), tomará en sus controles comunes (de Windows) la apariencia del tema de Windows XP que esté usando el usuario. PD. Pero no mezclemos distintos temas en un mismo Hilo que puedo acabar echándome la bronca a mí mismo y no veas tú qué compromiso. ![]() Última edición por dec fecha: 26-04-2007 a las 03:58:15. |
|
#4
|
||||
|
||||
|
Gracias Dec, las cosas de las que se entera uno... no tenía ni idea de eso
![]()
__________________
"Hey, nena, debe ser genial ser tú y verme a mí mismo..." |
|
#5
|
||||
|
||||
|
Hola,
Vamos a ampliar ambos la información, ya puestos, y a leer el artículo de Michael A. Allen y Zarko Gajic: Windows XP Manifest in Delphi. ![]() |
|
#6
|
||||
|
||||
|
Volviendo al tema de los KeyGen... yo pensaba que los sacaban las propias compañías de software.
Aunque suene a broma, lo digo en serio. El interés de dicha acción sería para permitir que usuarios no profesionales puedan acceder a sus productos.
__________________
Si no lo sabes, necesitas leerlo |
|
#7
|
||||
|
||||
|
Cita:
Ejemplo de cómo especificarlo:
También el otro método que existe es simplemente poniendo el archivo .manifest en la misma carpeta en donde radicará el ejecutable de tu proyecto pero con el mismo nombre del ejecutable, es decir, si nuestro ejecutable se llama MiProyecto.exe, el archivo manifest se tendrá que llamar MiProyecto.manifest Espero que les haya servido la información. Última edición por Black_Ocean fecha: 26-04-2007 a las 11:35:44. |
|
#8
|
||||
|
||||
|
Sé que llego tarde, y que esto está degenerando un poco, pero voy a recuperar el hilo inicial de esta conversación.
Lo de los programas "keygen" que muestran esas impresionantes presentaciones en poco más de 30Ko de ejecutable es herencia de las "tech-demos" que se empezaron a hacer en los '80. En estas se intentaba hacer el programa más impresionante (e inútil, todo sea dicho de paso) en el menor espacio posible. Yo fui demo-maker en mis tiempos, pero yo lo hacía en MSX y no en PC. Para ahorrar el máximo de memoria las demos se programaban exclusivamente en ensamblador, realizando llamadas directas al BIOS y accediendo a los puertos y a la memoria del sistema de forma directa, sin pasar por el sistema operativo. Por otro lado, lo que hincha un programa Windows suelen ser los recursos. Si en lugar de crear las ventanas y diálogos con el IDE, arrastrando y soltando componentes con el ratón, lo hacemos a golpe de código podemos reducir considerablemente el tamaño de los ejecutables. Hace ya algunos años hice una demostración con Delphi 6 en el que ahorré una media de 1'5Ko por control (no sólo los visibles como los botones sino también los invisibles como los TQuery, TDialog, etc.) al reproducir un programa RAD a golpe de código. Si un programa tiene 200 componentes, lo cual es bastante común, podemos ahorrar casi 300Ko. Eso sí, es mucho más difícil diseñar un formulario escribiendo el código directamente en Pascal que utilizando los componentes visuales.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi! - BAScript - Multi Language Scriptable Development Environment |
|
#9
|
||||
|
||||
|
O sea, que de RAD pasó a SAD
![]() // Saludos |
|
#10
|
||||
|
||||
|
Cita:
Mi programa va a medir menos que usando el editor de formularios de Delphi??? Me puedes firmar con tu sangre eso?? Y de ser así, porque es que sucede eso??? al final de cuentas eso es lo que hace el compilador de Delphi al crear el formulario, que no?
__________________
"Hey, nena, debe ser genial ser tú y verme a mí mismo..." |
|
#11
|
||||
|
||||
|
No estaría yo tan seguro que sea tanto el ahorro, pero sí debe disminuir el tamaño. Todas las propiedades de las componentes y formularios que se establecen en tiempo de diseño (es decir, el DFM), se guardan como recursos dentro del ejecutable. Al hacerlo por código, eliminas ese recurso del ejecutable.
// Saludos |
|
#12
|
||||
|
||||
|
Cita:
Lo malo es que quitando esas clases pasamos, como bien dice roman, de RAD (Rapid application development) a SAD (Slow ??? application development) , es decir, un montón de lineas para crear una ventana, un montón de lineas para crear un boton, etc ... |
|
#13
|
||||
|
||||
|
Cita:
__________________
"Hey, nena, debe ser genial ser tú y verme a mí mismo..." |
|
#14
|
||||
|
||||
|
SAD de slow y de
![]() Yo también había pensado que Ñuño se refería a lo que hemos dicho antes: crear formularios a mano, con la API de Windows. Pero aún haciéndolo así, si te pones a usar las unidades DB, DBCtrls, StdCtrls, ExtCtrls, necesarias para lo que menciona (botones, querys, etc) pues viene a ser casi lo mismo: ejecutables de más de 300kb. Por ello, cuando leí el mensaje de xander, pensé que realmente se refería a quitar el dfm del ejecutable. Pero, al igual que xander, estoy escéptico en este punto. // Saludos |
|
#15
|
||||
|
||||
|
Cita:
Es cierto que el ahorro no era mucho, pero siempre hay que valorar si el esfuerzo de hacerlo así merece la pena por el ahorro conseguido. Eso sí, estuve una temporada aprendiendo a programar GTK+ y ahí sí que se notó un ahorro bárbaro...
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi! - BAScript - Multi Language Scriptable Development Environment |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Los "ratones" se hacen inteligentes gracias a Logitech | Sasuke_Cub | Noticias | 1 | 08-10-2005 23:37:50 |
| DBGrid con PickList estilo "Code Templates" | sitrico | Varios | 0 | 01-07-2005 17:55:34 |
| buscar palabras parecidas (estilo google) - "quiso decir...." | ksellas | Conexión con bases de datos | 10 | 26-01-2005 00:30:49 |
| Stallman: "La única manera de ser libre es rechazar los programas propietarios" | kinobi | Debates | 12 | 20-05-2004 16:07:24 |
|