Porque algunos virus o troyanos no funcionan en otros SO?

Iniciado por Edu, 9 Septiembre 2010, 19:03 PM

0 Miembros y 1 Visitante están viendo este tema.

d(-_-)b

Pero no entiendo porque eliminarlas, no veo la razon.

CitarSupongamos que realizas una aplicacion que utiliza API's relacionadas con el modelo VxD, y intentas correr esa aplicacion en Windows 7... que crees que pasara!? No funcionara.

ok, eso es un problema, porque a ese paso habra que desechar las aplicaciones viejas si asi siguen y lo hacen.

No se, pero creo que sea lo que sea, si quitan una, supongo que ponen otra. no ??

aun asi, eso no me gusta. Aunque pensando bien, puede tener su lado bueno.

saludos...
Max 400; caracteres restantes: 366

h0xr-mov

#21
Pues, se hace para eliminar codigo obsoleto. Pero OJO: No es que las borran y te quedaste sin pito y sin flauta.

Primero se desarrolla una API alternativa, y se implementa. Durante un tiempo ambas API's estan en funcionamiento, salvo que la vieja esta marcada como deprecada. pasado ya mucho tiempo, se supone que tu, como buen programador, has actualizado ya tu programa para usar la nueva API. y en ese entonces, ya si se elimina la API vieja.

Tener todo ese codigo obsoleto ahi, es una carga muerta tremenda al momento de dar mantenimiento! Muchas veces lo que se hace es refactorizar el codigo, para modernizarlo sin cambiar la firma de sus funciones.

[L]ord [R]NA

Solo te tengo una simple pregunta, si marcas un programa y en compatibilidad le pones Win98 utilizara esas APIs de Win98?

cito de tu propia fuente:
CitarThe idea of networking Quality of Service in Windows has been around for a long time. If you look at the APIs in Windows 2000 and Windows XP, you'll find at least 3 APIs for QoS. We reviewed each of them and decided to deprecate them. What this means is that, some time in the future, each of these APIs will be removed from Windows.

Una cosa es que Windows 95, 98, ME utilizen un modelo de Driver VxD y las versiones posteriores utilizen WDM... no es lo mismo que quieras tomar caldo de una sopa con una cuchara, que con un tenedor. el API de QoS sera eliminada muy bien lo haz dicho, sera, esto no quiere decir que no se pueda utilizar actualmente.

h0xr-mov

Actualmente la puedes utilizar. Claro que si, pero esta marcada como deprecada. Si ahora haces una aplicacion que utilize esa api, en una proxima version de Windows podras toparte con que ya tu aplicacion no funciona.

Lo mismo ha pasado antes. No se que error salte ahora, porque estoy un poco desconectado del tema de las API de Windows (A Dios Gracias). Pero, antes el error que saltaba cuando intentabas llamar un api que ya no existia era:

"Cannot find entry point in dynamic link library in ??????.dll" donde ????? es el nombre del .dll que contenia el API

~

A las API base Win32 o Win16 usada popularmente desde sus orígenes (mayormente las comunes de nivel de aplicación y GUI) no se les puede eliminar funciones sin hacer que se venga a bajo y se vuelva obsoleta la plataforma misma. Tendría más sentido abandonarla por completo que mutilarla.

Por lo general son las APIs secundarias o algunas de sus llamadas, que no sean muy cruciales y más dependientes de una versión específica de Windows las que se pueden retirar o modificar.

Tengo los 3 libros del grupo "Osborne Windows Programming Series", que es de cuando Windows NT (Win32) no era comúnmente usado todavía. Actualmente hay varias funciones y definiciones de valores constantes, etc., que se mencionan en MSDN en Internet pero no en esos libros.

Una de dos: o esos libros están un poco incompletos a pesar de tener gran densidad de información, o la API base Win32 ha sido aumentada con el tiempo, y en eso consistiría el cambio. También, se podría decir que la API Win32 tal como estaba en el Windows NT original no tiene todas las funciones bajo Windows 9x (95/98).

Hasta en Windows 7 de 64 bits se puede usar Borland C++ 5.01 (de alrededor del año 2000 y Windows 98) y crear y ejecutar los programas de GUI Win32 que produce sin problemas. También se pueden correr programas GUI de Win16 (Windows 3.0, 3.1...) y programas de MS-DOS en Windows 7 de 32 bits.

Y los virus dejan de correr porque entre otras cosas, muchos agujeros de seguridad dejan de existir porque son solucionados y porque fundamentalmente Windows 9x es distinto a Windows NT (2000/XP/Vista/7) y el acceso a los dispositivos de hardware como la flash del BIOS no es igual que antes ni entre diferentes tarjetas madre de diferentes fabricantes. Como tratar de correr el virus Chernobyl en Windows 7, no creo que podría causar todo el daño para el que fue programado.
Sitio web (si la siguiente imagen no aparece es porque está offline):