Este es P10XB, un intento de clonar 'file' de *Nix.
[p10xb.git] / Plugin / Main.bas
blob240ecbac18f78ca852aa14d66d2907c0e9ea1be6
1 Attribute VB_Name = "Principal"
2 Option Explicit
4 Public Sub Main()
5 '<EhHeader>
6 On Error GoTo Main_Err
7 '</EhHeader>
8 Dim Archivo As String
9 Dim Canal As Byte
10 Dim Entrada As String * 3
11 Dim Salida As String
12 2 Archivo = Command$
13 4 Archivo = Trim$(Replace$(Archivo, """", ""))
15 8 If Len(Archivo) = 0 Then
16 10 MsgBox "Uso: vsnpdf.exe <ruta completa a archivo>", vbOKOnly
17 12 End
18 End If
20 16 Canal = FreeFile
21 18 Open Archivo For Binary Access Read As #Canal
22 20 Get #Canal, 6, Entrada
23 22 Close Canal
24 24 Salida = vbNewLine & "***" & vbNewLine & "Plugin VsnPDF.exe ha detectado que la versión del archivo PDF es: " & Entrada
25 28 Open App.Path & IO_Titulo_de_Archivo(Archivo) & ".txt" For Append Access Write As #Canal
26 30 Print #Canal, Salida
27 32 Close Canal
28 '<EhFooter>
29 Exit Sub
30 Main_Err:
31 Controlar_Error Erl, Err.Description, "VsnPDF.Principal.Main.Ref 10/12/2007 : 04:53:29 p.m."
32 Resume Next
33 '</EhFooter>
34 End Sub
36 Public Function IO_Titulo_de_Archivo(ByVal Ruta_Completa As String) As String
37 '<EhHeader>
38 On Error GoTo IO_Titulo_de_Archivo_Err
39 '</EhHeader>
40 Dim i As Long
41 2 i = InStrRev(Ruta_Completa, "\")
42 4 IO_Titulo_de_Archivo = Mid$(Ruta_Completa, i)
43 '<EhFooter>
44 Exit Function
45 IO_Titulo_de_Archivo_Err:
46 Controlar_Error Erl, Err.Description, "P10XB.IO.IO_Titulo_de_Archivo.Ref 10/12/2007 : 09:45:33 a.m."
47 Resume Next
48 '</EhFooter>
49 End Function
51 Public Sub Controlar_Error(ByRef nErl As Long, _
52 ByRef Descripcion As String, _
53 Donde As String)
54 'CSEH: Skip
55 Dim X_Err As Byte
56 2 X_Err = MsgBox("El siguiente error se produjo: " & vbNewLine & Descripcion & vbNewLine & "En el módulo: " & Donde & ", en la linea " & nErl & vbCrLf & "El programa puede estar inestable, sin embargo puede continuar, ¿desea hacerlo? ([SI] continúa, [NO] termina el programa)", vbYesNo + vbCritical)
57 On Error Resume Next
59 5 Select Case X_Err
61 Case Is = vbYes
63 6 Case Is = vbNo
64 8 End
65 End Select
67 End Sub