Problema ficheros. URGENTE!!!!

Juan Antonio
23 de Febrero del 2005
Hola.

Mi problema es el siguiente: me gustaria poder crear ficheros con otras extensiones. Sabriais como poder cambiar la extensión de un archivo y protegerlo para que no pueda verlo o simplemente codificarlo.

Lo mas importante para mi es poder cambiar la extension de txt a otra cualquiera.

Muchas Gracias.

Un saludo

Alfonso
23 de Febrero del 2005
Cuando guardes el archivo, cambia la extensión que quieres usar. Por ejemplo:
Miarchivo.txt, Por: Miarchivo.dat, o Miarchivo.hola.
La extensión la creas tu, el windows la guarda sin problemas pero deberias registrarla, para eso existe un procedimiento pero desconozco ahora mismo como se desarroya

Alfonso
23 de Febrero del 2005
Visita esta pagina sobre extensiones de archivos:
http://www.hispazone.com/conttuto.asp?IdTutorial=91

Deberias buscar algun sitio donde muestren código para codificar datos en archivos de texto sino utiliza esto
Public Function EncritDato(ByVal sEncript As String) As Variant
Dim lCount As Long
Dim i As Long
Dim X As Integer
Dim sMatrix() As String
Dim sCarat As String * 2
Dim nArText As Integer
Dim nClaveChar As Integer
Dim nTotal As Long
Dim sCadenaDat As String
Dim sChar As String
Const Password = "dato"
X = Len(Password)
ReDim sMatrix(1 To X)
'Insertamos la clave en la matriz
For i = 1 To X
sMatrix(i) = Mid(Password, i, 1)
Next i
For lCount = 1 To Len(sEncript)
sCarat = Mid(sEncript, lCount, 1)
If lCount > Len(Password) Then lCount = 1
sChar = sMatrix(lCount)
nArText = Asc(sCarat)
nClaveChar = Asc(sChar)
If nArText = 0 Then
nTotal = 0
ElseIf nArText = 255 Then
nTotal = 255
Else
nTotal = nArText + nClaveChar
End If
If nTotal > 255 Then
nTotal = nTotal - 255
End If
On Error Resume Next
sChar = Chr(nTotal)
sCadenaDat = sCadenaDat & sChar
Next lCount
EncritDato = sCadenaDat
End Function

Public Function DecritDato(ByVal sDecript As String) As Variant
Dim lCount As Long
Dim i As Long
Dim X As Integer
Dim sMatrix() As String
Dim sCarat As String * 2
Dim nArText As Integer
Dim nClaveChar As Integer
Dim nTotal As Long
Dim sCadenaDat As String
Dim sChar As String
Const Password = "dato"
X = Len(Password)
ReDim sMatrix(1 To X)
'Insertamos la clave en la matriz
For i = 1 To X
sMatrix(i) = Mid(Password, i, 1)
Next i
For lCount = 1 To Len(sDecript)
sCarat = Mid(sDecript, lCount, 1)
If lCount > Len(Password) Then lCount = 1
sChar = sMatrix(lCount)
nArText = Asc(sCarat)
nClaveChar = Asc(sChar)
If nArText = 0 Then
nTotal = 0
ElseIf nArText = 255 Then
nTotal = 255
Else
nTotal = nArText - nClaveChar
End If
If nTotal < 0 Then
nTotal = nTotal + 255
End If
On Error Resume Next
sChar = Chr(nTotal)
sCadenaDat = sCadenaDat & sChar
Next lCount
lCount = 0
DecritDato = sCadenaDat
End Function

Elvis
23 de Febrero del 2005
Como se podria crear aparte de lo dicho anteriormente un fichero oculto???