Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: _teiki en 12 Julio 2006, 02:31 am



Título: Problemas al creear y leer archivo
Publicado por: _teiki en 12 Julio 2006, 02:31 am
Bueno lo que quiero es que cree y abra un archivo con el nombre de la pc y la hora y dia. Al poner solo la Funcion PC_Name no me da error, pero al agregarle la Funcion Time_pc me sale error -Run-time error "13"- Type Mismatch

Aqui esta el codigo:
Código:
Dim sSave As String, ret As Long
sSave = Space(255)
    ret = GetSystemDirectory(sSave, 255)
    sSave = Left$(sSave, ret)
Open (sSave + "/" + Time_pc + PC_Name + ".sys") For Output As #1     ' Se abre el archivo
Print #1, Text1.Text ' se sobre escribe el log
Close #1 ' y se cierra
Gracias de antemano


Título: Re: Problemas al creear y leer archivo
Publicado por: <--v1c1ous--> en 12 Julio 2006, 06:01 am
Código:
Open (sSave & "/" & Time_pc & PC_Name & ".sys") For Output As #1

Lo que no entiendo porque tanto lio, simplifica un poco.

Código:
Fuction SaveLog()
Dim sSave as String
Dim TimePc$
Dim PCName$

sSave = GetSystemDirectory
TimePC =LocalTime
PCName = NombrePc

if Right(sSave,1) = "/" then
GoTo Save:
Else
sSave = sSave & "/"
End If

Save:
Open (sSave & TimePc & PCName & ".sys") For Output As #1
Print #1, Text1.Text
Close #1
End Function

Obvio que entendes que al hacer esto creara un nuevo archivo con una nueva fecha en cada ejecucion de la funcion.

Bien podrias cambiar el codigo para que:
Código:
Open (sSave & PCName & ".sys") For Output As #1
Print #1, "Hora Actual: " & TimePC & " - " & Text1.Text

Asi crearias un solo archivo y dentro separado por horas, eso si, cambiando el Open para que no sobreescriba.


Título: Re: Problemas al creear y leer archivo
Publicado por: _teiki en 12 Julio 2006, 06:11 am
 Si, por eso quiero poner el timpo.
Gracias por la ayuda :)


Título: Re: Problemas al creear y leer archivo
Publicado por: NYlOn en 12 Julio 2006, 06:41 am
No es Time_Pc es Time solo. Y si no queres sobre escribir podes abrir el archivo de modo Append (y no Output). Otra cosa, es recomendable usar &en vez de + pq a veces puede causar resultados no esperados. Por ejepmplo:
Código:
Dim A as long, B as long
A = 10
B = 24
MsgBox A + B ' Te da 34
MsgBox A & B ' Te da 1024 (las dos cadenas "pegadas"



Título: Re: Problemas al creear y leer archivo
Publicado por: <--v1c1ous--> en 12 Julio 2006, 18:08 pm
"+" y "&" son terminos distintos, no solo aveces inesperados, para unir dos cadenas se usa "&", de lo contrario no las estarias uniendo, sino haciendo una operacion y las sumaria, no uniria.