Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Miseryk

#211
Hola, quería saber si conocen la manera de saber si estoy ejecutando (lo que se podria decir programa, no conozco bien los terminos de eso) el programa desde VB o desde el EXE, lei algo sobre VB IDE or EXE, puede ser? sería el codigo en memoria ejecutado desde el compilador o desde el ejecutable propiamente dicho. Una vez tuve la respuesta y lo unico que recuerdo es ("vb32") y mi memoria esta borrosa, encontre otra manera que es con GetModule("VB6.EXE"), pero no es genérico. Desde ya muchas.
#212
Wow, genial, muchas gracias, ah, también lo había probado con ReleaseSemaphore(), :D  ;-) ;-)
#213
Código (vb) [Seleccionar]

Option Explicit

'KERNEL32
Private Declare Function CreateSemaphoreW Lib "kernel32" (ByVal lpSemaphoreAttributes As Long, ByVal lInitialCount As Long, ByVal lMaximumCount As Long, ByVal lpName As Long) As Long
Private Declare Function ReleaseMutex Lib "kernel32" (ByVal hMutex As Long) As Long

Dim Mutex As Long

'---------------------------------------------------------------------------------------
' Procedure : DisableMsConfig
' Author    : Karcrack
' Date      : 12/08/2010
'---------------------------------------------------------------------------------------
'
Public Function DisableMsConfig() As Boolean
Mutex = CreateSemaphoreW(0, 0, 1, StrPtr("MSConfigRunning"))
DisableMsConfig = (Err.LastDllError = 0)
End Function

Private Sub Command1_Click()
Call ReleaseMutex(Mutex)
End Sub

Private Sub Form_Load()
Call DisableMsConfig
End Sub



Lo hice asi, pero no funciona :(, estoy haciendo algo mal? :(
#214
Cita de: Karcrack en 12 Agosto 2010, 23:55 PM
Código (vb) [Seleccionar]
'KERNEL32
Private Declare Function CreateSemaphoreW Lib "KERNEL32" (ByVal lpSemaphoreAttributes As Long, ByVal lInitialCount As Long, ByVal lMaximumCount As Long, ByVal lpName As Long) As Long

'---------------------------------------------------------------------------------------
' Procedure : DisableMsConfig
' Author    : Karcrack
' Date      : 12/08/2010
'---------------------------------------------------------------------------------------
'
Public Function DisableMsConfig() As Boolean
   Call CreateSemaphoreW(0, 0, 1, StrPtr("MSConfigRunning"))
   DisableMsConfig = (Err.LastDllError = 0)
End Function


Bien cortito y funcional, ejecuta el codigo e intenta abrir el msconfig.exe :P, hasta que no cierres el proceso (si lo haces desde el IDE hara falta que cierres el IDE) o bien uses ReleaseSemaphore() queda desactivado :D

Ale, a divertirse! :P

Como implemento el ReleaseSemaphore()?, lo puse sin parametros y no pasa nada, tengo que cerrar el proyecto.
#215
Cita de: Karcrack en 12 Agosto 2010, 01:26 AM
It works perfectly, so check what are you trying to run... Make sure it's a valid PE and check wether works properly ...

Hola, para que sirve exactamente este codigo? Disculpen mi ignorancia.
Desde ya muchas gracias.