![]() |
CREAR EL oBJETO DE quartz.dll quartz.dll(ActiveMovie Control Type Library) cOMO PUEDO CREAR EL objeto de esta dll desde codigo sin crear la referencia. con el Microsof Agent lo hago de esta forma. Dim AgentControl as Object Set AgentControl = CreateObject( "Agent.Control.2") y funciona pero con este otro no. asi es como lo tengo Dim Player as Object Set Player = CreateObject("QuartzTypeLib.IMediaControl") la ventaja de crear el objeto y no ponerlo en la referencia es que el programa se adacta a la versión registrada. y con la referencia si la creaste a una version el programa te dara error si donde corra el programa hay una version diferente. |
Esta DLL, que forma parte del API DirectShow de DirectX8 en adelante, se referencia de otra forma, al menos que yo sepa por que tampoco he profundizado mucho en su uso y posiblemente si pueda ser referenciada con CreateObject(). No te preocupes por cambios de version en esta libreria, la version que se incluye con las distribuciones de DirectX9 sigue siendo compatible con la version de DirectX8 y ten en cuenta que si sufriese algun cambio que la hiciese incompatible con versiones anteriores (por ejemplo un cambio en la interfaz que elimine algun objeto por ejemplo) ni CreateObject() te salvaria del error, si un objeto no existe el programa al tratar de declarar dicho objeto fallara igual. Si a lo que te refieres es a que es mas facil localizar errores con CreateObject() que con la instruccion Set no veo diferencia alguna, On Error responde igual a los dos metodos con un bonito error 429. Salu2... |
El problema al que me refiero es que si creas una referencia a una dll no importa que tenga los mismos objetos si no es la misma version te dara error. Mira has esta prueba y veras a que me refiero. crea una dll Activex y agrégala a la referencia de un proyecto crea el ejecutable del proyecto ya ese ejecutable solo funcionara con esa dllActivex incluso puedes compilar de nuevo la dllActivex sin modificarle nada y veras que ya el programa no es compatible con la nueva dllActive X |
| La zona horaria es GMT -6. Ahora son las 22:26. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.