Autor
|
Tema: [Solucionado] Como Hacer para llamar a un form desde otra instancia del programa (Leído 5,340 veces)
|
agus0
Desconectado
Mensajes: 360
|
Buenas foro, estaba haciendo un soft y me tope con la siguiente duda: Si yo hago que mi soft se minimize en la bandeja de Tray (Junto al reloj), y el usuario, vuelve a ejecutar el programa desde el "Programa.exe", Como hago para que se habra el "FormMain" por ejemplo pero de la instancia que esta minimizada, es decir: Private Sub Form_Load() If App.PrevInstance = True Then 'abrir el FrmMain que esta minimizado End If End Sub
* mi duda seria que pongo en lugar de "'abrir el FrmMain que esta minimizado" Gracias
|
|
« Última modificación: 16 Enero 2010, 22:06 pm por agus0 »
|
En línea
|
|
|
|
seba123neo
|
Hola, este es un ejemplo de como hacer que te parpadee la ventana si a tenes ya abierta. Option Explicit Private Declare Function CreateMutex Lib "kernel32" Alias "CreateMutexA" (lpMutexAttributes As Any, ByVal bInitialOwner As Long, ByVal lpName As String) As Long Private Declare Function ReleaseMutex Lib "kernel32" (ByVal hMutex As Long) As Long Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Private Declare Function FlashWindow Lib "user32" (ByVal hwnd As Long, ByVal bInvert As Long) As Long Const ERROR_ALREADY_EXISTS = 183& Private Sub Form_Initialize() Dim hMutex As Long Dim vRet As Long hMutex = CreateMutex(ByVal 0&, 1, App.Title) If (Err.LastDllError = ERROR_ALREADY_EXISTS) Then ReleaseMutex hMutex CloseHandle hMutex vRet = FindWindow("ThunderRT6FormDC", "Form1") FlashWindow vRet, 1 End End If End Sub
adaptalo al tuyo.. saludos.
|
|
|
En línea
|
|
|
|
Hasseds
Desconectado
Mensajes: 145
|
PrevInstance no sirve si cambian de nonbre o ruta Option Explicit
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Private Declare Function SetForegroundWindow Lib "user32" (ByVal hwnd As Long) As Long Private Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
Private Sub Form_Load()
Dim CaptionVerdadero As String: CaptionVerdadero = Me.Caption
If App.PrevInstance Then Me.Caption = "INSTANCIA 2" Call ShowWindow(FindWindow(vbNullString, CaptionVerdadero), 1) Call SetForegroundWindow(FindWindow(vbNullString, CaptionVerdadero)) End End If
End Sub
Fijate esto http://foro.elhacker.net/empty-t261721.0.html
|
|
|
En línea
|
Sergio Desanti
|
|
|
agus0
Desconectado
Mensajes: 360
|
PrevInstance no sirve si cambian de nonbre o ruta Option Explicit
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Private Declare Function SetForegroundWindow Lib "user32" (ByVal hwnd As Long) As Long Private Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
Private Sub Form_Load()
Dim CaptionVerdadero As String: CaptionVerdadero = Me.Caption
If App.PrevInstance Then Me.Caption = "INSTANCIA 2" Call ShowWindow(FindWindow(vbNullString, CaptionVerdadero), 1) Call SetForegroundWindow(FindWindow(vbNullString, CaptionVerdadero)) End End If
End Sub
Fijate esto http://foro.elhacker.net/empty-t261721.0.htmlGracias Hasseds tu Code funciono perfecto Gracias
|
|
|
En línea
|
|
|
|
Hasseds
Desconectado
Mensajes: 145
|
agus, tené en cuenta que PrevInstance no sirve en el caso de que alguien modifique el nombre o la ruta del ejecutable, si bien esto se puede manejar con App.EXEName y App.Path lo correcto seria CreateMutex. como te indica Seba o que adaptes el code de byway. Un saludo agus
|
|
|
En línea
|
Sergio Desanti
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
llamar un Windowsform de C sharp.Net desde un Form de Visual Basic.NET
.NET (C#, VB.NET, ASP)
|
tonder
|
2
|
3,686
|
25 Junio 2011, 17:44 pm
por tonder
|
|
|
[SOLUCIONADO] Como evitar que se abra otra instancia de un JFrame?
Java
|
chequinho
|
2
|
13,135
|
13 Marzo 2012, 07:08 am
por chequinho
|
|
|
programa para ver remotamente otra pc
Hacking
|
CORTEZ
|
5
|
5,086
|
30 Julio 2012, 16:55 pm
por m0rf
|
|
|
[C#] Llamar Form que se agrego de un programa ya existente.
.NET (C#, VB.NET, ASP)
|
Ruben_efl18
|
2
|
2,025
|
28 Mayo 2016, 05:17 am
por Eleкtro
|
|
|
Como usar un panel en un form como contenedor para otros form en C#
Programación General
|
luar79
|
0
|
2,482
|
26 Mayo 2022, 12:21 pm
por luar79
|
|