Create object by name

Hoy he necesitado crear una instancia de una clase en Visual Basic .NET.

Encontré la siguientes solución, basada en reflectividad:

Imports System.Runtime.Remoting

Dim oh As ObjectHandle = System.Activator.CreateInstance _
("Ensamblado", "Ensamblado.Clase")

Dim instancia As Ensamblado.Clase = oh.Unwrap()


XML restrictions on a set of values

Hoy he necesitado validar que los valores de los atributos de un fichero XML pertenecen a un conjunto de valores concreto.

Encontré las siguientes soluciones, basadas en XSD:

Solución 1:

<xs:element name="car">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Audi"/>
<xs:enumeration value="Golf"/>
<xs:enumeration value="BMW"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

Solución 2:

<xs:element name="car" type="carType"/>
<xs:simpleType name="carType">
<xs:restriction base="xs:string">
<xs:enumeration value="Audi"/>
<xs:enumeration value="Golf"/>
<xs:enumeration value="BMW"/>
</xs:restriction>
</xs:simpleType>


La principal diferencia entre la solución 1 y la solución 2 reside en que la segunda solución define el tipo carType de modo que pueda ser utilizado por otros elementos. Esto se consigue definiendo carType fuera del elemento car.


Executing an .exe inside a VBScript

Necesitaba ejecutar un fichero .exe desde VBScript. He aquí el código que utilicé:

Set wshShell = WScript.CreateObject ("WSCript.shell")
wshshell.run """C:\WINNT\notepad.exe""", 6, True
set wshshell = nothing


JavaScript Hashtable Object

Hoy me he encontrado con que necesitaba utilizar una tabla hash en JavaScript. Ya que dicho lenguaje no posee un objeto propio, he utilizado la siguiente implementación: hashtable.js

Un pequeño ejemplo de uso:

var myHash = new Hashtable();

myHash.put('42894488Z', 'Arturo Pérez Reverte');
myHash.put('31892488A', 'Sigmund Freud');

alert(myHash.get('42894488Z'));