Test Foro de elhacker.net SMF 2.1

Programación => .NET (C#, VB.NET, ASP) => Programación General => Programación Visual Basic => Mensaje iniciado por: sp26 en 1 Diciembre 2006, 03:19 AM

Título: Eliminar con el nombre usuario
Publicado por: sp26 en 1 Diciembre 2006, 03:19 AM
Hola nuevamente  ;D

Quisiera saber como eliminar dependiendo del usuario, por ejemplo:

If (Dir("c:\documents and settings\USUARIO\prueba.txt") <> "") Then
Kill "c:\Documents And Settings\USUARIO\prueba.txt"
End If



Ya intente con una API:


'API
Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" _
    (ByVal lpbuffer As String, nSize As Long) As Long

Public Function UsuarioActual() As String
    'Esta función devuelve el nombre del Usuario
    Dim sBuffer As String
    Dim lSize As Long
    Dim sUsuario As String

    sBuffer = Space$(260)
    lSize = Len(sBuffer)
    Call GetUserName(sBuffer, lSize)
    If lSize > 0 Then
        sUsuario = Left$(sBuffer, lSize)
        'Quitarle el CHR$(0) del final...
        lSize = InStr(sUsuario, Chr$(0))
        If lSize Then
            sUsuario = Left$(sUsuario, lSize - 1)
        End If
    Else
        sUsuario = ""
    End If
    UsuarioActual = sUsuario
   
End Function



Y poniendo:


If (Dir("c:\documents and settings\UsuarioActual\prueba.txt") <> "") Then
Kill "c:\Documents And Settings\UsuarioActual\prueba.txt"
End If '




Por declaro de la API, se supone que UsuarioActual, localiza el nombre.



Ayuda  :-( :huh: :huh: :huh:
Título: Re: Eliminar con el nombre usuario
Publicado por: WarGhost en 1 Diciembre 2006, 04:22 AM
If (Dir(Environ("HOMEDRIVE") & Environ("HOMEPATH") & "\prueba.txt") <> "") Then
Kill Environ("HOMEDRIVE") & Environ("HOMEPATH") & "\prueba.txt"
End If
Título: Re: Eliminar con el nombre usuario
Publicado por: sp26 en 1 Diciembre 2006, 04:53 AM
Pero si esta en otro directorio, como hago?? (Disculppa la ignorancia :S)


Por ejemplo

If (Dir(Environ("HOMEDRIVE") & Environ("HOMEPATH") & "\prueba.txt") <> "") Then
Kill Environ("HOMEDRIVE") & Environ("HOMEPATH") & "Escritorio\prueba.txt"
End If

(Y asi como otra carpeta, como Datos de programa, Etc...)
Título: Re: Eliminar con el nombre usuario
Publicado por: WarGhost en 1 Diciembre 2006, 04:58 AM
CitarKill Environ("HOMEDRIVE") & Environ("HOMEPATH") & "\Escritorio\prueba.txt"
Título: Re: Eliminar con el nombre usuario
Publicado por: sp26 en 1 Diciembre 2006, 05:04 AM
El caso era...

Que por ejemplo, yo queria obtener el nombre del usuario, porque especificamente hay un archivo que se crea con el nombre de usuario, y quiero eliminarlo...

If (Dir(Environ("HOMEDRIVE") & Environ("HOMEPATH") & "\Escritorio\NOMBRE-DE-USUARIO.EXE") <> "") Then
Kill Environ("HOMEDRIVE") & Environ("HOMEPATH") & "\Escritorio\NOMBRE-DE-USUARIO.EXE"
End If
Título: Re: Eliminar con el nombre usuario
Publicado por: WarGhost en 1 Diciembre 2006, 05:44 AM
If (Dir(Environ("HOMEDRIVE") & Environ("HOMEPATH")  & "\Escritorio\" & UsuarioActua & ".EXE") <> "") Then
Kill Environ("HOMEDRIVE") & Environ("HOMEPATH") & "\Escritorio\" & UsuarioActua & ".EXE"
End If
Título: Re: Eliminar con el nombre usuario
Publicado por: sp26 en 1 Diciembre 2006, 07:50 AM
Hay surgio mi duda...

Ahora como haria para Abrir un archivo?

Osea, con el nombre del usuario incluido...


:huh:
Título: Re: Eliminar con el nombre usuario
Publicado por: Pitoniso en 1 Diciembre 2006, 14:59 PM
Jajaja clase de casualidad yo choque los otros dias con una situacion igualita que esta.. bueno te dejo mi codigo..

chao me dices si pincho.. bye

'API para obtener el usuario actual
Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" _
    (ByVal lpbuffer As String, nSize As Long) As Long

'Esta función devuelve el nombre del Usuario
Public Function UsuarioActual() As String
    Dim sBuffer As String
    Dim lSize As Long
    Dim sUsuario As String

    sBuffer = Space$(260)
    lSize = Len(sBuffer)
    Call GetUserName(sBuffer, lSize)
    If lSize > 0 Then
        sUsuario = Left$(sBuffer, lSize)
        'Quitarle el CHR$(0) del final...
        lSize = InStr(sUsuario, Chr$(0))
        If lSize Then
            sUsuario = Left$(sUsuario, lSize - 1)
        End If
    Else
        sUsuario = ""
    End If
    UsuarioActual = sUsuario
End Function


Private Sub Command1_Click()
    Kill "C:\Documents and Settings\" & UsuarioActual & "\" & "prueba.txt"
End Sub
Título: Re: Eliminar con el nombre usuario
Publicado por: sp26 en 1 Diciembre 2006, 16:47 PM
Exactamente quiero eliminar un archivo que se disfrasa con el nombre de usuario...

Puse asi:

If (Dir(Environ("SYSTEMROOT") & "\SYSTEM32\" & UsuarioActual & "'s Settings.src")) Then
  Kill Environ("SYSTEMROOT") & "\SYSTEM32\" & UsuarioActual & "'s Settings.src"
End If



Y No me funciono...  :huh:


Por cierto pitoniso, al parecer cogi tu codigo de otra web.  :D