Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Confirmado: dx_lib32 es compatible con Windows Vista

Iniciado por [EX3], 06 de Febrero de 2007, 05:08:19 AM

« anterior - próximo »

[EX3]



Finalmente he tenido la oportunidad de poder instalar Windows Vista edicion Home Basic (la edicion mas baja de las 6 ediciones disponibles, sin contar con la edicion Starter, similar a un Windows XP Home Edition) en una maquina virtual VMware a falta de un disco duro extra o un equipo a parte para hacer una instalacion real, y he aprovechado entre otras cosas ha testear mis desarrollos en Visual Basic 6.0, entre ellos el que mas me interesaba que era la dx_lib32.

Despues de unas cuantas peleas con el tema de registrar componentes ActiveX el resultado ha sido satisfactorio. Para el que no lo sepa todavia para poder añadir al registro de Windows un componente (OCX) o libreria ActiveX (DLL), ya sea de forma manual a traves de la utilidad REGSVR32.EXE, mediante el API de Windows, o mediante una instalacion, se han de tener permisos de administrador, cosa que hasta Windows XP ha sido facil debido a que en Windows el usuario por defecto siempre ha sido el administrador de la maquina por lo que no tenia restricciones sobre las operaciones sobre el sistema. En Vista esto cambia, ahora el usuario por defecto ya no dispone de todos los permisos de administrador por motivos de seguridad, por lo que el registro de ActiveX se queda capado. La unica forma de momento que he encontrado es iniciar Windows Vista en modo seguro ya que en este modo siempre tendremos la posibilidad de iniciar sesion como administrador. A partir de aqui, como siempre, dispondremos de los metodos de siempre para registrar libremente un componente en el sistema.

Dicho esto, queda avisado de que la utilidad de registro que incluye la distribucion de dx_lib32 no funcionara en una sesion normal de Windows Vista a no ser que la ejecutemos con la opcion Ejecutar como administrador que es una via mas rapida que la de iniciar en modo seguro:



De esta manera, si nuestro programa tiene que ejecutar operaciones que requieran privilegios de administrador podra llevarlos a cabo. En este caso se registraria asi dx_lib32 en el sistema.

Otro aviso es que, como me temia, no vienen instaladas de serie en Windows Vista con el nuevo DirectX10 los componentes COM que permiten acceder a la API de DirectX7 (dx7vb.dll) y DirectX8 (dx8vb.dll) desde Visual Basic 6.0, dependencias necesarias para ejecutar dx_lib32. Estas se tienen que añadir manualmente junto a dx_lib32 en el proceso descrito antes. A partir de la proxima revision de dx_lib32 estas librerias vendran junto a dx_lib32 en el directorio BIN por si fuese necesario instalarlas y programare la utilidad de registro para que registre opcionalmente si se le especifica estas librerias.

Una vez logrado registrar la dx_lib32 en el sistema, ejecute todos los tutoriales de dx_lib32 a excepcion de los tutoriales de la clase dx_GFX dado que la maquina virtual no puede emular la aceleracion grafica de Direct3D, via que aprovecha dx_GFX para ejecutar sus rutinas graficas. Todos los tutoriales funcionaron a la perfeccion sin dar problema alguno. Los tutoriales graficos deberian funcionar igualmente dado que el resto de librerias de DirectX8 estan presentes en DirectX10. Aun asi, si alguien dispone de una version de Windows Vista, Release Candidate o Final, instalacion real, no emulada, estaria bien que hiciera las pruebas.

Otra pureba que si realize y fue igualmente satisfactoria en lo que respecta al problema de registros de de ActiveX en sesion de usuario en Vista fue testeando esta version de mi proyecto TLSA Engine que lleva inyectadas las dependencias minimas para ejecutarse en Windows 98 y Vista* (msvbvm60.dll, oleaut32.dll, dx7vb.dll*, dx8vb.dll*, dsetup.dll y dxlib32.dll) en el propio codigo del ejecutable gracias a esta herramienta y que sin tener instalada la dx_lib32 ni los componentes COM de DirectX para Visual Basic 6.0 este se ejecuto correctamente sin echar en falta ninguna libreria ni lanzar un error de creacion de objetos ni errores relacionados.

Este metodo no solo facilita la distribucion en el resto de versiones de Windows si no que evita el problema de no poder instalar comodamente cualquier desarrollo que hagamos en Windows Vista. En caso de hacer una instalacion para Windows Vista y que esta permita registrar nuestros componentes desde una sesion normal de usuario podeis consultar este articulo de la MSDN que describe algunos consejos y pasos a seguir para generar instalaciones con permisos de administrador para Windows Vista con el sistema MSI de instalacion de Windows.

Resumiendo:
    1. Para ejecutar un programa con
dx_lib32 en Windows Vista hay que añadir como dependecias las librerias dx7vb.dll y dx8vb.dll y registrarlas en el sistema.

2. Para registrar componentes ActiveX en Windows Vista se debera iniciar Windows en modo seguro.[/list]
Cualquier comentario, duda o informacion extra que tengais y no este indicada en este articulo no dudeis en escribirla.

Salu2...

Enlaces relacionados:
Sobre la compatibilidad de Visual Basic 6.0 y Windows Vista (elGuille - http://www.elguille.info/)
Enseñe a sus aplicaciones a ejecutarse sin problemas con el control de cuentas de usuario de Windows Vista (MSDN Magazine - http://msdn.microsoft.com/msdnmag/)
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

fiero

Cita de: "[EX3"]
2. Para registrar componentes ActiveX en Windows Vista se debera iniciar Windows en modo seguro.[/list]
Cualquier comentario, duda o informacion extra que tengais y no este indicada en este articulo no dudeis en escribirla.

Me has hecho instalar la versión home basic solo para comprobar esto ;) . La instalación de mi ActiveX me funcionó sin problemas con el Ultimate y ahora también con el Home basic.

Puedes probar la instalación de mi ActiveX aquí: http://www.devalvr.com/install

Al instalar el sistema he seguido todos los pasos normales y al final me ha creado una cuenta de Administrador, con la que siempre me inicia, sin tener que iniciar en modo seguro. Tengo la ultima versión Release Candidate que salió, que te pregunta qué versión quieres instalar. ¿Hay diferencias con una Home Basic normal? ¿O quizás tiene que ver que mi .ocx está firmado?

un saludo
www.videopanoramas.com Videopanoramas 3D player

[EX3]

Cita de: "fiero"Me has hecho instalar la versión home basic solo para comprobar esto ;) . La instalación de mi ActiveX me funcionó sin problemas con el Ultimate y ahora también con el Home basic.

Puedes probar la instalación de mi ActiveX aquí: http://www.devalvr.com/install
Extraño por que anoche mientras escribia este post volvi a hacer pruebas, por si me equivoque en algun paso (ahi fue cuando descubri el comando del menu contextual "Ejecutar como administrador") y ni aun asi logre ejecutar un registro como usuario con regsvr32 ni por linea de comandos ni mediante un BAT, que al fin y al cabo es lo mismo. Sin embargo ejecutando mi herramienta de registro con el comando "Ejecutar como administrador" si funciono :?

Cita de: "fiero"Al instalar el sistema he seguido todos los pasos normales y al final me ha creado una cuenta de Administrador, con la que siempre me inicia, sin tener que iniciar en modo seguro.
A mi la instalacion por defecto me creo una cuenta de usuario, dado que para hacer muchas acciones como copiar archivos en el directorio sistema por ejemplo me pide confirmarcion de administrador, cosa que en modo seguro no lo hace. Lo que si es cierto es que se puede asignar los privilegios de administrador a una cuenta de usuario configurandolo desde el panel de administracion de usuarios y estos problemas desaparecerian. Yo estoy intentando que se puedan hacer estos pasos desde una cuenta de usuario si es que en verdad se puede, si no tocara hacerlo desde instaladores como comenta el articulo de la MSDN.

Cita de: "fiero"Tengo la ultima versión Release Candidate que salió, que te pregunta qué versión quieres instalar. ¿Hay diferencias con una Home Basic normal? ¿O quizás tiene que ver que mi .ocx está firmado?
Mi instalacion tambien me permitia instalar cualquier version de las 6 si no se le indicaba una clave de instalacion concreta. Esta instalacion es la de la version Release Candidate? Ahora me has dejado con la duda :D

Pues la verdad, si hay diferencia con una Home Basic no tengo ni idea, yo instale esta version de las 6 dado que al instalarlo en una maquina virtual no queria que se ejecutara malamente, luego aparte queria hacer las pruebas sobre una version de "baja gama" dado que pienso que si funciona en esta deberia funcionar en las siguientes mas altas, o quizas me equivoque y debiera haberlo hecho al reves. Si me hago con un disco duro extra haria una instalacion real de la edicion Business o la Ultimate.

Sobre que el ActiveX tenga que estar firmado o no para permitir su registro en el sistema, lo tengo en duda de si es necesario o no. Si recuerdo que una de las veces que en sesion de usuario logre que casi registrara mi libreria regsvr32 me devolvio un error de que no encontraba el punto de entrada del componente (DLLRegisterServer()) pero no se si esto se debe a si esta o no firmado. Ya que lo comentas, que se necesita para firmar un ActiveX? y dicho esto tambien un ejecutable (y asi evitar el mensajito tipico de si permites ejecutar el programa o no).

Por cierto, si tuvieras tiempo y me pudieras hacer el favor, ya que tienes Vista en una instalacion real, podrias descargar la distro de la dx_lib32 y probar los tutoriales de la clase dx_GFX? Es simplemente para confirmar si existe algun error en las rutinas de dicha clase, que en principio no deberia haberlos :)

Salu2...

P.D.: Un detalle que me di cuenta tambien que al menos ami me pasa. No cargan los archivos de ayuda en formato *.chm. Se abre el visor de ayuda pero no muestra el contenido con un error 404 como si no encontrara el archivo html del articulo al intentar visualizarlo. Si te bajas la dx_lib32 me gustaria que intentaras abrir la documentacion, a ver si a ti te carga bien.
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

fiero

No he podido instalar tu componente en mi sesión, me da el error 53. Sin embargo sí puedo instalar el mio. Hay una cosa diferente entre los dos ejecutables, en el mio sale un escudo en el icono, el mismo escudo que aparece en el menu, en la opción "Ejecutar como administrador". Ese escudo no forma parte de mi icono y no sé por qué sale, ¿quizás mi EXE se ejecuta siempre como administrador?

Otra diferencia puede ser que mi ActiveX es un OCX y el tuyo un DLL, pero no sé si influirá en algo.

He probado a firmar tu EXE y tu DLL pero sigue sin instalarse (error 53), y tampoco sale el escudo en el logo.

El OCX está como resource dentro del ejecutable, se copia en el sistema y se registra con esto, creo que tu harás algo parecido:

int CInstallDlg::RegistrarDLL(char *fichero,bool registrar)
{
int error=1;
HRESULT (STDAPICALLTYPE * lpDllEntryPoint)(void);

if (!FAILED(OleInitialize(NULL)))
{
SetErrorMode(SEM_FAILCRITICALERRORS);       // Make sure LoadLib fails.
// Load the library.
HINSTANCE hLib = LoadLibraryEx(fichero, NULL, LOAD_WITH_ALTERED_SEARCH_PATH);
if (hLib >= (HINSTANCE)HINSTANCE_ERROR)
{
// Find the entry point.
(FARPROC&)lpDllEntryPoint = GetProcAddress(hLib, registrar?"DllRegisterServer":"DllUnregisterServer");
if (lpDllEntryPoint)
{
// Call the entry point.
if (!FAILED((*lpDllEntryPoint)()))
{
error=0;
}
}
FreeLibrary(hLib);
}
OleUninitialize();
}
return(error);
}


Para firmar un DLL o EXE se necesita un certificado de firma, yo me compré uno hace un mes aqui http://www.instantssl.com por 99$, ahor han subido a 179€ :shock:

un saludo
www.videopanoramas.com Videopanoramas 3D player

[EX3]

Cita de: "fiero"No he podido instalar tu componente en mi sesión, me da el error 53. Sin embargo sí puedo instalar el mio. Hay una cosa diferente entre los dos ejecutables, en el mio sale un escudo en el icono, el mismo escudo que aparece en el menu, en la opción "Ejecutar como administrador". Ese escudo no forma parte de mi icono y no sé por qué sale, ¿quizás mi EXE se ejecuta siempre como administrador?
(...)
He probado a firmar tu EXE y tu DLL pero sigue sin instalarse (error 53), y tampoco sale el escudo en el logo.
Ya me fije de algunos programas que ejecute en Vista que me aparecia el escudo en el icono, justamente los que no pedian confirmacion de administrador. Tienes tu EXE firmado o certificado tambien?

Cita de: "fiero"Otra diferencia puede ser que mi ActiveX es un OCX y el tuyo un DLL, pero no sé si influirá en algo.
Se que hay ciertas diferencias en cuanto a temas de registro donde un OCX en ciertas circunstancias se autoregistra solo mientras que una DLL ActiveX siempre hay que registrarla. Por lo demas ni idea.

Cita de: "fiero"El OCX está como resource dentro del ejecutable, se copia en el sistema y se registra con esto, creo que tu harás algo parecido
Yo utilizo una declaracion de la API que en una sola llamada puedes registrar o des-registrar un componente, este metodo. Pero igual, si no se tienen privilegios de administrador este metodo devuelve error, lo que no me explico aun es por que lanza un error 53 de archivo no encontrado cuando yo tengo programado un cuadro de mensaje concreto para cuando no se logra hacer registro, tal y como se ve en enlace que te he puesto. Este detalle me ha despistado un poco, quizas sin privilegios de administrador esta API no es capaz de leer el componente que tiene que registrar y por eso se dispara la excepcion de la runtime de VB 6.0 (ya me toca meter un On Error :P)

Cita de: "fiero"Para firmar un DLL o EXE se necesita un certificado de firma, yo me compré uno hace un mes aqui http://www.instantssl.com por 99$, ahor han subido a 179€ :shock:
Echare un vistazo por si me interesara y me mereciese la pena firmar la dx_lib32. Aun asi, visto que con MoleBox (que tambien me cuesta 99$) me salto a la torera el sistema de privilegios de administrador de Windows al virtualizar las dependencias en el propio ejecutable, y con el lio de andar arrastrando el registro de componentes en cada equipo, de esta manera me despreocupo en mis proyectos. A nivel personal me vale como solucion, pero no lo es para las personas que programen por su cuenta con mi libreria.

Salu2...
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

fiero

Cita de: "[EX3"]
Ya me fije de algunos programas que ejecute en Vista que me aparecia el escudo en el icono, justamente los que no pedian confirmacion de administrador. Tienes tu EXE firmado o certificado tambien?

¿Qué es certificado? Lo tengo firmado con un certificado digital. He visto que mi versión local, un visor .EXE, no tiene el escudo, y también está firmado igual que el instalador del plugin. Así que no sé que significa ese escudo ni por qué sale. Además, tambien sale si no firmo el instalador.

No creo que tenga importancia, me he fijado en que algunos instaladores no lo tienen ese escudo, como el de QuickTime.

La única diferencia que he visto con mi instalador firmado o sin firmar es que aparece un mensaje diferente: "Se va a ejecutar un programa de ... ¿Confia usted en ...?" o "Se va a ejecutarun programa ... de un editor desconocido...". Los dos funcionan perfectamente, así que no te merece la pena firmar tu dll. Yo más que nada lo necesito para que la gente se instale el CAB a través del navegador.

saludos





Cita de: "fiero"Otra diferencia puede ser que mi ActiveX es un OCX y el tuyo un DLL, pero no sé si influirá en algo.
Se que hay ciertas diferencias en cuanto a temas de registro donde un OCX en ciertas circunstancias se autoregistra solo mientras que una DLL ActiveX siempre hay que registrarla. Por lo demas ni idea.

Cita de: "fiero"El OCX está como resource dentro del ejecutable, se copia en el sistema y se registra con esto, creo que tu harás algo parecido
Yo utilizo una declaracion de la API que en una sola llamada puedes registrar o des-registrar un componente, este metodo. Pero igual, si no se tienen privilegios de administrador este metodo devuelve error, lo que no me explico aun es por que lanza un error 53 de archivo no encontrado cuando yo tengo programado un cuadro de mensaje concreto para cuando no se logra hacer registro, tal y como se ve en enlace que te he puesto. Este detalle me ha despistado un poco, quizas sin privilegios de administrador esta API no es capaz de leer el componente que tiene que registrar y por eso se dispara la excepcion de la runtime de VB 6.0 (ya me toca meter un On Error :P)

Cita de: "fiero"Para firmar un DLL o EXE se necesita un certificado de firma, yo me compré uno hace un mes aqui http://www.instantssl.com por 99$, ahor han subido a 179€ :shock:
Echare un vistazo por si me interesara y me mereciese la pena firmar la dx_lib32. Aun asi, visto que con MoleBox (que tambien me cuesta 99$) me salto a la torera el sistema de privilegios de administrador de Windows al virtualizar las dependencias en el propio ejecutable, y con el lio de andar arrastrando el registro de componentes en cada equipo, de esta manera me despreocupo en mis proyectos. A nivel personal me vale como solucion, pero no lo es para las personas que programen por su cuenta con mi libreria.

Salu2...[/quote]
www.videopanoramas.com Videopanoramas 3D player

[EX3]

Cita de: "fiero"Además, tambien sale si no firmo el instalador.
(...)
No creo que tenga importancia, me he fijado en que algunos instaladores no lo tienen ese escudo, como el de QuickTime.
En vista segun recuerdo haber leido los programas de instalacion, no todos (y tu ya has confirmado un caso), el sistema les activa una especie de cuenta de administrador cerrada para que el instalador maniobre sin problemas desde cuentas de usuario. Esto lo lei en el enlace que puse antes de la MSDN Magazine. Se basa en leer ciertos metadatos de los binarios de instalacion para determinar si se trata de un instalador o no. ¿Que instalador usas? Quizas no todos los sistemas de instalacion son identificados por Vista correctamente y el que tu usas si lo es, me supongo que por eso te aparece el escudo.

Pues si bien los instaladores serian una buena solucion para distribuir la dx_lib32, como antaño hice antes de la version 2.0, deberia hacer la prueba, aunque este metodo lo abandone en cuanto publique la 2.0 para que el usuario pudiera instalar manualmente la libreria a su antojo y asi tener a mano el binario en vez tener que ir a buscarlo al directorio sistema.

Salu2...
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

fiero

Lo realmente extraño es que mi instalador es un EXE normal y corriente, creado a partir de un proyecto MFC al igual que mi visor EXE. Simplemente es una aplicación genérica con un cuadro de diálogo.

También probé a eliminar el .CAB de los resources, y compilar el instalador. Sigue saliendo el escudo en el logo. No entiendo qué es lo que usa Vista para determinar que mi programa es un instalador.

Bueno, ya encontré el problema. He copiado "dx7vb.dll" y "dx8vb.dll" en el sistema y ahora tu instalador funciona correctamente. Incluso mejor que el mio, ya que no saca ningún mensaje de permisos. Parece ser que Vista pide permisos para copiar cosas pero no los pide para registrar cosas. Y también comprueba las dependencias antes de registrar y da un error de "fichero no existe" si alguna dependencia no existe.

Los ejemplos de GFX no me funciona ninguno. Todos cascan al salir , excepto el 1 que no casca, y el 6 y 8 que dan "Runtime error 9: Subscript out of range". En todos aparece la ventana en blanco, excepto en el 7 que aparece la lista, pero con todos los valores a 0, y ningun elemento en el combo.

saludos!
www.videopanoramas.com Videopanoramas 3D player

[EX3]

Cita de: "fiero"Los ejemplos de GFX no me funciona ninguno. Todos cascan al salir , excepto el 1 que no casca, y el 6 y 8 que dan "Runtime error 9: Subscript out of range". En todos aparece la ventana en blanco, excepto en el 7 que aparece la lista, pero con todos los valores a 0, y ningun elemento en el combo.
Me acabas de matar con esto :lol: Probastes si en XP te funcionan? Como antaño recuerdo que tuvistes problemas con la clase de sonido en versiones anteriores, y no fuistes el unico, quizas venga por otro camino el tema de los errores.

Acabo de encontrar un disco duro entre el resto del hardware que tenia guardado y si no da problemas voy a intentar hacer una instalacion limpia del Vista para intentar ver si logro encontrar las incompatibilidades de mi libreria.

Salu2...
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

fiero

Ten cuidado, yo tenía un XP de pruebas y al instalar el Vista en la segunda partición del disco duro ya no pude arrancar con XP. Si tienes algo en el disco principal desenchufalo, no te vaya a joder el arranque.

He probado tus ejemplos en mi XP de trabajo y no me funcionan muy bien. Creo que lo que no me funciona es algo de las texturas. El ejemplo 1 y 6 funcionan correctamente. El 7 se queda bloqueado recopilando info y acabo por cerrarlo. Los demás cascan al salir (creo que son todos los que utilizan texturas) con el famoso 0xC0000005 Access violation en MSVBVM60.DLL.

Veo que al ejecutar los ejemplos aparece una ventana pequeña en blanco, y luego se centra, se agranda y aparece con fondo negro, despues de iniciar el modo de video. En el XP la inicialización me la hace bien, en Vista se me quedaban todos los ejemplos con la ventana inicial, en blanco.

El equipo del XP es un iMac dual core, ATI mobility radeon X1600.

Oye, acabo de pensar en lo del Vista, viene con DX preinstaladas, pero le faltan "dx7vb.dll" y "dx8vb.dll" , menuda cagada ¿no?
www.videopanoramas.com Videopanoramas 3D player

tewe76

No quiero manchar este hilo de dx_lib32, pero tampoco creo que merezca la pena crear uno nuevo. Simplemente es que estoy un poco perplejo  :shock: . En otro hilo hace tiempo, ¿no llegamos ~ a la conclusión de que "todo" funcionaría bien en Vista? Desde un punto de vista egoísta (no, esta frase no es un chiste malo ;)), fiero, ¿podrías probar si el Fairy Match te instala/funciona bien? (link en mi firma)
Gracias, y perdón por el OT  :oops:
Tewe
www.TAPAZAPA.com : Funny and easy to play games for all ages! - Fairy Match - Brain Crash
www.LaRebelionDelBiberon.com : Experiencias de unos padres primerizos

[EX3]

Cita de: "fiero"Ten cuidado, yo tenía un XP de pruebas y al instalar el Vista en la segunda partición del disco duro ya no pude arrancar con XP. Si tienes algo en el disco principal desenchufalo, no te vaya a joder el arranque.
Gracias por el apunte, lo pense incluso aunque no lo hice, y weno, estoy a tiempo dado que no se por que el mismo dvd de instalacion que use para la maquina virtual me da error en mitad de la instalacion de cualquiera de las 6 ediciones de Vista que tengo, este error en concreto, y no logro instalarlo (amen a esto y aprovechando el disco duro extra tambien comprobe que la version x86 de Mac OS X tampoco se lleva bien con los AMD :P)

Cita de: "fiero"He probado tus ejemplos en mi XP de trabajo y no me funcionan muy bien. Creo que lo que no me funciona es algo de las texturas. El ejemplo 1 y 6 funcionan correctamente. El 7 se queda bloqueado recopilando info y acabo por cerrarlo. Los demás cascan al salir (creo que son todos los que utilizan texturas) con el famoso 0xC0000005 Access violation en MSVBVM60.DLL.
Matarme todos :P Despues de leer lo remarcado en negrita acabo de recordar que antes de ponerme a meter las mejoras de la version posterior a la actual de la web, tras realizar una comprobacion en los tutoriales esta tambien me dio problemas al ejecutar los tutoriales graficos, exactamente los mismos errores que a ti y en los mismos tutoriales, problema que solucione recompilando los tutoriales a la nueva version. Se ve que por mas que lo intento no logro mantener compatibilidad binaria correcta. Acabo de subir una compilacion de la 2.1.191 sin terminar, pero funcional, que a mi al menos no me da problemas con los tutoriales graficos, para que vuelvas a probar cuando puedas y asi confirmar si realmente era ese el problema :) Es una distro completa con los tutoriales incluidos:

dx_lib32v21191beta.rar (2.45 MB)

Por cierto, no me has dicho aun si te dio problemas el archivo CHM de la documentacion, a mi al menos en Vista cualquier archivo de ayuda *.CHM no abre ninguno.

Cita de: "fiero"Veo que al ejecutar los ejemplos aparece una ventana pequeña en blanco, y luego se centra, se agranda y aparece con fondo negro, despues de iniciar el modo de video. En el XP la inicialización me la hace bien, en Vista se me quedaban todos los ejemplos con la ventana inicial, en blanco.
dx_lib32 lo que hace es tomar la ventana de destino de dibujo y este como este incialmente la adapta al modo de video que se le indica en los parametros de inicio, y como al renderizar no le indico color de fondo este lo limpia con color negro, de ahi que veas esa transicion de blanco a negro el fondo a la vez que se redimensiona y centra la ventana.

Cita de: "fiero"El equipo del XP es un iMac dual core, ATI mobility radeon X1600.
Eres la 2º persona que conozco que se instala el XP en un Mac :) Amen de esto, no creo que la tarjeta tuviera que dar problemas ya que dx_lib32 no requiere florituras avanzadas como shaders ni nada por el estilo.

Cita de: "fiero"Oye, acabo de pensar en lo del Vista, viene con DX preinstaladas, pero le faltan "dx7vb.dll" y "dx8vb.dll" , menuda cagada ¿no?
Ya me di cuenta, se ven que no quieren que porte mi libreria a esta version? :P :lol: De ahi que comentara mas arriba que incluiria estas librerias en la proxima version de la dx_lib32 para que la utilidad las copie e instale automaticamente.

Cita de: "tewe76"En otro hilo hace tiempo, ¿no llegamos ~ a la conclusión de que "todo" funcionaría bien en Vista?
En nuevas versiones de Windows todo siempre es un supuesto, nunca des nada por hecho ;) Al menos si pude comprobar que lo que es Visual Basic 6.0 como tal si funciona sin dar problemas en Vista, otra cosa es que nuestros programas metan la zarpa en rincones privados del sistema para hacer cosas impensables para el propio lenguaje (dx_lib32 esta mas apoyado sobre el API de Windows que sobre la propia runtime de VB 6.0 para llevar a cabo la mayor parte de sus tareas)

Cita de: "tewe76"Desde un punto de vista egoísta (no, esta frase no es un chiste malo ;)), fiero, ¿podrías probar si el Fairy Match te instala/funciona bien? (link en mi firma)
Si no tira de Direct3D te lo puedo probar yo en la maquina virtual con mucho gusto.

Salu2...

P.D.:
Cita de: "tewe76"Gracias, y perdón por el OT  :oops:
Nada hombre, si con ello logramos asegurarnos de que nuestro trabajo funciona en Vista no hay mal que por bien no venga ;)
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

tewe76

CitarSi no tira de Direct3D te lo puedo probar yo en la maquina virtual con mucho gusto.
Pues utiliza sólo el DDraw de DX7, no sé si éso es D3D, supongo que no, así que si me lo pruebas, pues perfecto :) . De todas maneras si fiero lo puede probar en una máquina real, pues me quedo más tranquilo.
Tewe
www.TAPAZAPA.com : Funny and easy to play games for all ages! - Fairy Match - Brain Crash
www.LaRebelionDelBiberon.com : Experiencias de unos padres primerizos

[EX3]

Cita de: "tewe76"Pues utiliza sólo el DDraw de DX7, no sé si éso es D3D, supongo que no, así que si me lo pruebas, pues perfecto :)
DirectDraw no es aceleracion 3D asi que la maquina virtual lo soporta a la perfeccion (y si no que me lo digan a mi que resucite el Worms 2 en el VMware :)). En cuanto tenga un rato lo testeo ;)

Salu2...
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

fiero

Cita de: "tewe76"En otro hilo hace tiempo, ¿no llegamos ~ a la conclusión de que "todo" funcionaría bien en Vista? Desde un punto de vista egoísta (no, esta frase no es un chiste malo ;)), fiero, ¿podrías probar si el Fairy Match te instala/funciona bien?

Hola tewe76,

Mi programa funciona perfectamente sin ninguna modificación, la versión ejecutable, el plugin para IE y el plugin para Firefox. También he probado el Fairy Match y no hay ningún problema. Quizás tengan más problemas otros programas con dependencias como los de EX3 que están en VB, ya veremos.


EX3, he probado tu RAR beta y me funciona perfectamente en mi XP (iMac). Ahora en el Vista no me da fallos, pero no pasa de la pequeña ventana en blanco. El tutorial 7 solo muestra la memoria total y disponible, lo demás todo a 0 y el combo vacío.

El CHM me ha funcionado perfectamente en Vista.

saludos!

PD: Estoy muy contento con mi XP en el iMac. No comento nada más que luego esto se llena de flames ;)
www.videopanoramas.com Videopanoramas 3D player






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.