|
De lo que aquí se trata es de usar dos funciones del API de Windows: FindWindow y SetForegroundWindow.
El código se usa dentro del procedimientos Main, el cual tendrás que añadirlo, ya que por defecto no se incluye al crear un nuevo proyecto de Visual Basic .NET (en C# siempre se incluye el código de Main).
Se busca una "ventana" con el título indicado, y si se encuentra, se activa (se trae al frente) y se cierra la aplicación actual (que sería la segunda copia), esto es equivalente al App.PrevInstance del VB6.
Este código también forma parte de la librería que estoy haciendo con algunas funciones útiles, pero se puede usar directamente en el código del formulario. Lo único que habría que hacer es declararlas como Shared; ya que al usarse desde el procedimiento Main, que también es un procedimiento compartido (Shared), nos obliga a declararlas Shared, por la sencilla razón que dentro de los procedimientos compartidos sólo podemos usar otros procedimientos o variables que a su vez estén compartidas.
|