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 - .Slasher-K.

#51
Windows API (Ansi)

Agrega eso como referencia y te olvidas de declarar las APIs.

La función va a devolver el path de tu proceso si el nombre del proceso que le pasaste no se está ejecutando.
#52
GetModuleFilenameEx no funciona en Win9X, hay una manera mucho más sencilla usando sólo GetModuleFilename.

La manera fácil es obtener el handle del módulo usando sólo el nombre, que es lo que te devuelve Process32First/Next y luego llamar a GetModuleFilename, como en la siguiente función:


Function GetProcessFilename(ByVal ModuleName As String) As String
      Dim sPath$, lPath&
      Dim hModule&, r&

  lPath = MAX_PATH
  sPath = String$(MAX_PATH, 0)
 
  hModule = GetModuleHandle(ModuleName)
 
  r = GetModuleFileName(hModule, sPath, lPath)
 
  If r Then
    GetProcessFilename = Left$(sPath, r)
  End If
End Function


Y te ahorras mucho código.

Saludos.
#53
Sí no especifica el path tiene que estar debajo de esa clave, con el siguiente formato:


HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\App Paths\<appname>


Y lees el valor predeterminado, que es la ruta de acceso completa. Si no existe esa clave, entonces el siguiente paso es buscar en la variable de entorno PATH


Debug.Print Environ("PATH")


Y por último en el directorio de Windows y en el directorio del sistema (GetWindowsDirectory y GetSystemDirectory).
#54

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\App Paths
#55

  ' Reemplaza Space por HendriX
  '
  sData = Replace$(sData, "Space", "HendriX")


o


Function ReplaceStr(ByVal Text As String, ByVal Find As String, ByVal NewStr As String) As String
         Dim lPos&

  lPos = InStr(1, Text, Find)

  If lPos Then
    Mid(Text, lPos, Len(Find)) = NewStr
    ReplaceStr = Text
  End If
End Function


En el caso de TextBox


      Dim lPos&, sFind$

  sFind = "Space"
  lPos = Instr(1, txtData, sFind)

  If lPos Then
    txtData.SelStart = lPos
    txtData.SelLength = Len(sFind)
  End If

#56
Private Sub txtData_LostFocus()
  If Not IsNumeric(txtData) Then
    Call MsgBox("Tenés que ingresar un valor numérico", vbExclamation)
    txtData = vbNullString
  End If
End Sub


o


Private Sub txtNum_Validate(Cancel As Boolean)

  If Not IsNumeric(txtData) Then
    Call MsgBox("Tenés que ingresar un valor numérico", vbExclamation)
    txtData = vbNullString
    Cancel = True
  End If
End Sub
#57
Programación Visual Basic / Re: REG_BINARY
4 Marzo 2006, 20:03 PM

    For I = 1 To Len(strData)  Step 2

    Next


Cambia Len(strData) \ 2 por Len(strData)
#58
Private Sub txtData_LostFocus()
  If Not IsNumeric(txtData) Then
    Call MsgBox("Tenés que ingresar un valor numérico", vbExclamation)
    txtData = vbNullString
  End If
End Sub
#59
Está bien, podría llamarse reindexacion.
#60
Format$
FormatDateTime$
FormatCurrency$
FormatNumber$
FormatPercent$