Función para obtener System32 en Visual Basic

Necesito saber si conoces alguna función en visual basic 6.0 para obtener la ruta exacta de la carpeta SYSTEM32 del sistema operativo windows, ya sea que esté en la unidad C: o unidad D: (o cualquier otra unidad) para no hacerlo constante.
Respuesta
Private Function cnsSystem32() As String
    Dim n As String
    n = Left(CStr(App.Path), 3)
    n = n & "Windows\system32\"
    cnsSystem32 = n
End Function
esta funcion te devuelve la ruta exacta c o d o e + "\windows\system32\"
Hola amigo. No creo que sea eso lo que esperaba. Supone que el ejecutable de mi aplicación esté en la unidad D:, pero el System32 está en la unidad C:, lo que está haciendo allí es concatenar la unidad D: de mi aplicación a la cadena "Windows\system32", y no es lo que buscaba.
Te agradecería si pudieses darme la respuesta o correcta.

4 respuestas más de otros expertos

Respuesta
1
Crea un módulo y coloca este código
Declare Function GetWindowsDirectoryA Lib "Kernel32" _
   (ByVal lpBuffer As String, ByVal nSize As Long) As Long
   Declare Function GetSystemDirectoryA Lib "Kernel32" _
   (ByVal lpBuffer As String, ByVal nSize As Long) As Long
Sub ObtenerDirectorioSO()
      Dim strBuf As String
      Dim lngSize As Long
      Dim retval As Long
      strBuf = String(255, 0)
      lngSize = 255
      'Obtener directorio de windows
      retval = GetWindowsDirectoryA(strBuf, lngSize)
      strBuf = Left(strBuf, retval)
      MsgBox "Directorio de Windows: " & strBuf
      'Obtener directorio de sistema
      strBuf = String(255, 0)
      lngSize = 255
      retval = GetSystemDirectoryA(strBuf, lngSize)
      strBuf = Left(strBuf, retval)
      MsgBox "Directorio de sistema: " & strBuf
   End Sub
Desde un formulario en un botón por ejemplo:
call ObtenerDirectorioSO
Eso es todo.
Respuesta
1
Por supuesto dame unos minutos salgo a compra je je vuelvo en 5 minutos
Respuesta
1
A ver si te vale
Public Function SystemDirectory() As String
    Dim buffer As String * 512, length As Integer
    length = GetSystemDirectory(buffer, Len(buffer))
    SystemDirectory = Left$(buffer, length)
End Function
Respuesta
Hay una variable del sistema que te da esa información, pero no sabría decirte exactamente cual es.

Añade tu respuesta

Haz clic para o
El autor de la pregunta ya no la sigue por lo que es posible que no reciba tu respuesta.

Más respuestas relacionadas