viernes, 29 de mayo de 2009

La Compatibilidad de Windows

La Compatibilidad de aplicación de aquí en adelante Versiones de Windows:

 

 

La discusión centra en aplicaciones Basadas En - Windows

Involucran tratados de compatibilidad, conductores de muestra de Windows, y BASADO EN MS-DOS.. Los lineamientos generales para Productores de Aplicación Basados En Windows Mantienen estas reglas generales cuando se desarrollan en mente aplicaciones para Windows Microsoft: O La regla dorada de compatibilidad de aplicación es para se adherir al Desarrollo de Software de Windows Microsoft (SDK) (SDK) documentación. Eso es, no utiliza una interface de programación de aplicación (API) que no está documentado, y solamente utilizada los caracteres distintivos de un API que están documentado. No o depende del formato de estructuras de datos internas seguir siendo las mismas en el futuro.

Por ejemplo, el formato de las estructuras internas utilizaron para

Windows (HWND), menús (HMENU), contextos de dispositivo (HDC), regiones (HRGN), Mapas de Bits (HBITMAP), y tareas (HTASK) están garantizado cambiar en una versión futura de Windows. Otras estructuras internas pueden también cambiar. No o suponen objetos están asignado en información de GDI O DEL USUARIO segmento. En un intento retirar limitaciones de recurso del sistema, objetos que están asignado actualmente en estos segmentos de información pueden estar asignado en otra parte en el futuro. Por ejemplo, presuntuoso un asa de ventana es un offset en segmento de información DEL USUARIO probablemente estaría incorrecto de aquí en adelante versiones de Windows.

No o reemplaza sistema DLLS TAL COMO TOOLHELP. DLL, CASCARA. DLL, y COMMDLG. DLL a menos que usted utilice la versión APIS (VER. DLL). Estos DLLS cambiará en el futuro.

El sistema voluntad funcionamiento deficiente si aplicaciones

reemplazaran estos DLLS con más viejo 3.0 o 3.1 versiones. Si su aplicación instalara estos DLLS, doble revise el código para corrección; Muchas aplicaciones que intentan estas no hacen correctamente. La Prueba o el número de versión de Windows adecuadamente. El siguiente codifica, por ejemplo, no trabajará correctamente si fuera recorrer una versión de Windows que está numerada 4.0 debido a que la primera prueba de la versión menor fallará. Sorprendentemente, este es un error propio comun. Version de Windows LOWORD (Getversion ()); Si (HIGHBYTE (versión de windows)> 10&& LOWBYTE (versión de windows)> 3) // corre además // salida Utiliza el siguiente codifica en lugar de eso: Version de Windows LOWORD (Getversion ()); Version de Windows (((PALABRA) (LOBYTE (versión de windows)))<< 8)| (EXPRESA) HIBYTE (versión de windows); Si (versión de windows > 0x030a)// NOTA: Utiliza siempre un valor HEX aquí!!! // corren además // salen Aplicaciones o escribieron para versión de Windows 2. x no será sostenida bajo versiones futuras de Windows. Asegúrese sus aplicaciones han estado probado y construido utilizando cualquiera de la versión de Windows 3. x SDKS de modo que estén marcado como aplicaciones escritas para versión de Windows 3.0 o más alta y podida recorrer modo protegido. No o copian archivos de grupo de Administrador de Programa hacia un disco del usuario. Utilice la información dinámica de Administrador de Programa (DDE)

(DDE) interface para añadir detalles de grupos y grupo para su aplicación. No o suponen Windows de aplicación minimizadas tienen Windows de título de ícono. Si su aplicación caminara la lista de ventana y supone esa Windows con un nombre de clase de

 

“ 0x8004 “ o “ #32772 “ son títulos de ícono, la aplicación no funcionará adecuadamente de aquí en adelante versiones de Windows. Si sus necesidades de aplicación para desempeñar esta operación en el momento de la corrida en versión de Windows 3.1, escribe a su código de modo que la aplicación continuará para trabajar aunque no encuentra las Windows de título de ícono. No o Hacen duro codifiquen las dimensiones de pixel de menús, ruelan barras, tamaños de encabezamientos, y tales. En lugar de eso, uso Getsystemmetrics para obtener estos tamaños. Los tamaños cambiará depender del conductor de muestra activo y poder ser usuario ajustable en el futuro. También, su código deberia observar para el mensaje de WM WININICHANGED y reiniciar los valores de conformidad. No o Hacen duro colores de botón de código para ser el estándar tres sombras de gris. Utilice el Getsystemcolors funciona para obtener estos colores. de nuevo, reloj para el mensaje de WM WININICHANGED, y reinicia estos colores de conformidad. Aquellas escritura o detectores de errores tienen que utilizar los servicios suministrado por TOOLHELP. DLL, más bien que los servicios suministrado por el más viejos WINDEBUG. DLL. WINDEBUG. DLL no trabajará de aquí en adelante versiones de Windows. No o supone que Global cable asignado MS-DOS. MEMORIA. Su aplicación tiene que utilizar Globaldosalloc para obtener este tipo de memoria. No o supone que Globalalloc con la opción de GMEM FIXED asignar espacio MS-DOS. MEMORIA. Su aplicación tiene que utilizar Globaldosalloc para obtener este tipo de memoria. La Impresora o suave font información está almacenado actualmente en GANAR. INI y estar asociado con un puerto particular (LPT1, por ejemplo). En el futuro, esta información estará asociado con una impresora para ser independiente del puerto al ual la impresora está conectado. O Su aplicación no debe suponer los contenidos de cualquier WINOLDAP (ms-dos. administrador) estructuras de datos asignadas en segmento de información de WINOLDAP.

Estas estructuras pueden cambiar en el futuro. O no Hace overtune su aplicación STACKSIZE O POSICIONES DE HEAPSIZE en la aplicación. archivo de DEF. Algunos productores han entonado estas posiciones (STACKSIZE, en particular) en sus aplicaciones suministrar espacio exactamente suficiente para recorrer versión de Windows 3.0 o 3.1. Estas aplicaciones a veces tienen problemas porque diferentes Windows mostrar conductores tienen diferentes características de profundidad /. Las versiones futuras de Windows mezclará este problema debido a que la profundidad / cambiará para la mayoría de los componentes de núcleo (GDI , NUCLEO, USUARIO, y así sucesivamente). Está recomendado que al menos unas adicional 2 K se es las posiciones mínimas de STACKSIZE Y DE HEAPSIZE. Los lineamientos generales para Productores de Conductor de Muestra Mantienen estos puntos cuando se desarrollan en mente conductores de muestra para Windows: O El significado del campo de Windhand en el EXTPAINTSTRUC puede estar cambiado para modo realzado ambicioso. Windhand es el HWND del ambicioso ventana de niño dentro de la ventana de WINOLDAP. Todo ambicioso pintura deberia estar restringido para esta ventana. Grabbers no estuvo supuesto utilizar Windhand para cualquier cosa más allá de llamada Getclientrect, Getdc, y tal. Grabbers o no deberia utilizar el EPSTATUSFLAGS refrena otro que ffocus, fvvalid, fselect, y fgrbprob. Algún refrena que son privados para WINOLDAPP estuvo incluido accidentalmente en los archivos de encabezado de DDK aunque no utilizado en cualquier Distribuido En Microsoft ambicioso muestrea fuente. Los lineamientos generales para ms-dos. productores Si usted desarrollara aplicaciones para ms-dos. manutención estas reglas en mente: O Asegúrese sus trabajos de aplicación adecuadamente en una versión de Windows 3.1 MS-DOS.. Asegúrese especialmente su programa establecido funcionará en unas Windows MS-DOS.. Por ejemplo, escribiendo sobre archivos de grupo de Administrador de Programa o alterando GANAR. INI O SISTEMA. INI mientras Windows está corriendo sería cosas malas hacer.

Aún cuando la aplicación es BASADA EN MS-DOS. CONSIDERO escribir un programa establecido Basado En Windows, especialmente si sus necesidades de proceso establecidas

para desempeñar operaciones tal como alterar GANAR. INI O SISTEMA. INI. no o supone la ubicación de la mesa de archivo del sistema (SFT) O MS-DOS.. Estas pueden estar movido en memoria alta para proveer memoria excepcionalmente convencional. En general, toda la interna MS-DOS. PUEDE estar movido en memoria alta en el futuro. No o suponen tamaños de internos MS-DOS.. Por ejemplo, no supone que un bloque de parámetro de urgencia (DPB) tiene 21 bytes de h de largo como algunas aplicaciones tienen. El formato de estructuras de datos tal como estas que son fácils de encontrar y cruzadas muy bien puedan cambiar de aquí en adelante versiones de MS-DOS. Utilice INT documentado 21 llamadas de h para obtener información tal como esta. Por ejemplo, DPBS puede ser obtenido utilizando INT 21 h funciona, 1 Fh y 32 h.

Puedan 12, 2006 Este artículo Abstracto provee lineamientos generales para escribir aplicaciones para la versión de Windows Microsoft 3. x sistema de operación en una manera que producirá los problemas de compatibilidad menos cuando la aplicación es recorrer versiones futuras de Windows.

Tags: internet, informatica, software, consejos

Publicado por Anarka2009 @ 10:21 | 0 Comentarios | Enviar

Comentarios
Añadir comentario