VMP JBin - AG
Home > JBin > AG
TxJBin

Clases

Enlaces

Downloads
AG Clase
.NET Framework 4.5.1
Publicado: Julio de 2018
Instancia principal que gestiona todo el contenido de una Base de Datos OceanBD.
Espacio de nombres: JBin
Ensamblado: jbin.Dll
JBin es un protocolo que genera y lee archivos binarios, que pueden ser encriptados para garantizar la seguridad de su contenido.
Con JBin puedes almacenar datos tanto en archivos como en un buffer en memoria y puedes comunicar diferentes programas para pasar información, aunque estos están en diferentes lenguages o plataformas de programación.
AG (Add & Get) es la clase principal de JBin y el centro de gravedad en donde toda la librería gira.
Propiedades
Nombre
Descrpción
AllowNull
Devuelve o establece si la instancia admite nulos en los archivos. Si AllowNull es false, no se admiten nulos en las funciones de Add y Get.
AutoResize
Devuelve o establece si el archivo que se va generando se auto redimensiona según va creciendo el buffer.
Copyright
Devuelve el copyright de JBin.
DateCreated
Devuelve la fecha de creación del archivo leido.
Info
Devuelve la información de la aplicación que a creado el archivo JBin leido.
IsEncrypt
Devuelve si el archivo JBin leido está encriptado.
LicenseActiveDemo
Devuelve si la licencia demo de JBin está activa.
LicenseEmail
Propiedad para validar la licencia de JBin (en desuso, preparada para el futuro).
LicenseExpirationDate
Devuelve la fecha y hora de expiración de la licencia de JBin.
Propietary
Devuelve el Propietary de JBin.
SizeAutoResizeBuffer
Devuelve o establece el tamaño del buffer que se agina cada vez que se redimensiona con AutoResize a True.
SizeBuffer
Devuelve o establece el tamaño inicial que se asigna al buffer.
TypeFile
Devuelve o establece el tipo de archivo JBin.
UrlPropietary
Devuelve la Url del propietario de JBin.
ValidationUrl
Devuelve la Url de Validación de JBin (en desuso, preparada para el futuro).
Version
Devuelve la versión actual de JBin.
Métodos
Nombre
Descrpción
AddBinary (byte[])
Añade un array binario al buffer binario en la posición LFO.
AddBool (Boolean)
Añade un Boolean al buffer binario en la posición LFO.
AddByte (Byte)
Añade un Byte al buffer binario en la posición LFO.
AddChar (Char)
Añade un Char al buffer binario en la posición LFO.
AddColor (Color)
Añade un objeto Color al buffer binario en la posición LFO.
AddContextMenu (ContextMenu)
Añade un objeto ContextMenu al buffer binario en la posición LFO.
AddContextMenuStrip (ContextMenuStrip)
Añade un objeto ContextMenuStrip al buffer binario en la posición LFO.
AddCursor (Cursor)
Añade un objeto Cursor al buffer binario en la posición LFO.
AddDate (DateTime)
Añade un objeto Date al buffer binario en la posición LFO.
AddDecimal (Decimal)
Añade un Decimal al buffer binario en la posición LFO.
AddDouble (Double)
Añade un Double al buffer binario en la posición LFO.
AddFont (Font)
Añade un objeto Font al buffer binario en la posición LFO.
AddImage (Image)
Añade un objeto Image al buffer binario en la posición LFO.
AddImageFromFile (String)
Añade un objeto Image desde un archivo al buffer binario en la posición LFO.
AddImageList (ImageList)
Añade un objeto de clase ImageList al buffer binario en la posición LFO.
AddInt (Integer)
Añade un Integer al buffer binario en la posición LFO.
AddListView (ListView)
Añade un objeto ListView al buffer binario en la posición LFO.
AddListViewGroup (ListViewGroup)
Añade un objeto ListViewGroup al buffer binario en la posición LFO.
AddListViewItem (ListViewItem)
Añade un objeto ListViewItem al buffer binario en la posición LFO.
AddListViewSubItem (ListViewItem.ListViewSubItem)
Añade un objeto ListViewItem.ListViewSubItem al buffer binario en la posición LFO.
AddLong (Long)
Añade un Long al buffer binario en la posición LFO.
AddMenuStrip (MenuStrip)
Añade un objeto MenuStrip al buffer binario en la posición LFO.
AddPadding (Padding)
Añade un objeto Padding al buffer binario en la posición LFO.
AddPictureBox (PictureBox)
Añade un objeto PictureBox al buffer binario en la posición LFO.
AddPoint (Point)
Añade un objeto Point al buffer binario en la posición LFO.
AddPointF (PointF)
Añade un objeto PointF al buffer binario en la posición LFO.
AddRectangle (Rectangle)
Añade un objeto Rectangle al buffer binario en la posición LFO.
AddRectangleF (RectangleF)
Añade un objeto RectangleF al buffer binario en la posición LFO.
AddSByte (SByte)
Añade un SByte (sin signo) al buffer binario en la posición LFO.
AddShort (Short)
Añade un Short al buffer binario en la posición LFO.
AddSingle (Single)
Añade un Single (float en C#) al buffer binario en la posición LFO.
AddSize (Size)
Añade un objeto Size al buffer binario en la posición LFO.
AddSizeF (SizeF)
Añade un objeto SizeF al buffer binario en la posición LFO.
AddStr (String)
Añade una cadena de texto al buffer binario en la posición LFO.
AddToolStripComboBox (ToolStripComboBox)
Añade un objeto ToolStripComboBox al buffer binario en la posición LFO.
AddToolStripItem (ToolStripItem)
Añade un objeto ToolStripItem al buffer binario en la posición LFO.
AddToolStripSeparator (ToolStripSeparator)
Añade un objeto ToolStripSeparator al buffer binario en la posición LFO.
AddToolStripTextBox (ToolStripTextBox)
Añade un objeto ToolStripTextBox al buffer binario en la posición LFO.
AddUInt (UInteger)
Añade un UInteger (sin signo) al buffer binario en la posición LFO.
AddULong (ULong)
Añade un ULong (sin signo) al buffer binario en la posición LFO.
AddUShort (UShort)
Añade un UShort (sin signo) al buffer binario en la posición LFO.
GetBinary()
Devuelve un array binario igual que el añadido con AddBinary del buffer binario en la posición LFO.
GetBool()
Devuelve un Boolean del buffer binario en la posición LFO.
GetByte()
Devuelve un Byte del buffer binario en la posición LFO.
GetChar()
Devuelve un Chart del buffer binario en la posición LFO.
GetColor()
Devuelve un objeto Color del buffer binario en la posición LFO.
GetContextMenu(ContextMenu)
Rellena en resCtx por refencia un objeto ContextMenu extraido del buffer binario en la posición LFO.
GetContextMenuStrip (ContextMenuStrip)
Rellena en vMenu por refencia un objeto ContextMenuStrip extraido del buffer binario en la posición LFO.
GetCursor()
Devuelve un objeto Cursor del buffer binario en la posición LFO.
GetDataBinary(Optional EncryptCredentials, Optional Boolean)
Devuelve el contenido del buffer en formato binario.
Si Allbuffer es True, devuelve el buffer completo, si es False, devuelve hasta la posición de pLFO.
GetDate()
Devuelve un objeto Date del buffer binario en la posición LFO.
GetDecimal()
Devuelve un Decimal del buffer binario en la posición LFO.
GetDouble()
Devuelve un Double del buffer binario en la posición LFO.
GetFont()
Devuelve un objeto Font del buffer binario en la posición LFO.
GetImage()
Devuelve un objeto Image del buffer binario en la posición LFO.
GetImageList(ref ImageList)
Rellena en vPic por refencia un objeto ImageList extraido del buffer binario en la posición LFO.
GetInt()
Devuelve un Integer del buffer binario en la posición LFO.
GetListView(Ref ListView, String, Point, Size)
Rellena en vPic por refencia un objeto ListViewItem extraido del buffer binario en la posición LFO.
GetListViewGroup()
Devuelve un objeto ListViewGroup del buffer binario en la posición LFO.
GetListViewItem(Ref ListViewItem)
Rellena en vPic por refencia un objeto ListViewItem extraido del buffer binario en la posición LFO.
GetListViewSubItem(Ref ListViewItem)
Rellena en vSubItem por refencia un objeto ListViewItem.ListViewSubItem extraido del buffer binario en la posición LFO.
GetLong()
Devuelve un Long del buffer binario en la posición LFO.
GetMenuStrip(MenuStrip, Optional String)
Rellena en vMesnu por refencia un objeto ToolStripItem extraido del buffer binario en la posición LFO.
GetPadding()
Devuelve un objeto Padding del buffer binario en la posición LFO.
GetPictureBox()
Devuelve un objeto PictureBox del buffer binario en la posición LFO.
GetPoint()
Devuelve un objeto Point del buffer binario en la posición LFO.
GetPointF()
Devuelve un objeto PointF del buffer binario en la posición LFO.
GetRectangle()
Devuelve un objeto Rectangle del buffer binario en la posición LFO.
GetRectangleF()
Devuelve un objeto RectangleF del buffer binario en la posición LFO.
GetSByte()
Devuelve un SByte (sin signo) del buffer binario en la posición LFO.
GetShort()
Devuelve un Short del buffer binario en la posición LFO.
GetSingle()
Devuelve un Single (float en C#) del buffer binario en la posición LFO.
GetSize()
Devuelve un objeto Size del buffer binario en la posición LFO.
GetSizeF()
Devuelve un objeto SizeF del buffer binario en la posición LFO.
GetStr()
Devuelve una cadena de texto del buffer binario en la posición LFO.
GetStr(Integer)
Devuelve una cadena de texto del buffer binario en la posición LFO. Fuerza a leer solo la longitud indicada.
GetToolStripComboBox()
Devuelve un objeto ToolStripComboBox y los ImageList que contenga del buffer binario en la posición LFO.
GetToolStripItem(ToolStripItem)
Rellena en resCtx por refencia un objeto ToolStripItem extraido del buffer binario en la posición LFO.
GetToolStripSeparator()
Devuelve un objeto ToolStripSeparator y los ImageList que contenga del buffer binario en la posición LFO.
GetToolStripTextBox()
Devuelve un objeto ToolStriptextBox y los ImageList que contenga del buffer binario en la posición LFO.
GetUInt()
Devuelve un Integer (sin signo) del buffer binario en la posición LFO.
GetULong()
Devuelve un Long (sin signo) del buffer binario en la posición LFO.
GetUShort()
Devuelve un UShort (sin signo) del buffer binario en la posición LFO.
Load(String, Optional EncryptCredentials)
Lee y carga el contindo del archivo JBin en el buffer. Éste debe tener el protocolo JBin.
Save(String, Optional EncryptCredentials)
Guarda el contindo del buffer en un archivo binario con el protocolo JBin.
SetDataBinary(Byte(), Optional EncryptCredentials)
Transfiere DataBinary al buffer y pone pLFO a cero.
Eventos
Nombre
Descrpción
OnError (Object, AGError)
Evento que se dispara cuando se produce algún error excepción no controlada.
Ejemplo en VB.Net
En este ejemplo, creamos una clase 'Class User' para los datos de un usuario, una lista 'List(Of User)' de usuarios y los guardamos en un archivo JBin, despues lo cargamos en una nueva lista vacia.
Después, el mismo ejemplo en C#.

Imports System.IO
Imports JBin

' Creamos una clase para guardar a los usuarios
Public Class User

	Public Name As String
	Public City As String
	Public DateCreated As Date
	Public Avatar As Image

End Public

Public Class Form1

   ' Iniciar una colección en una lista de la clase Users
   Dim Users As List(Of User) = New List(Of User)

  ' Iniciar Jbin con eventos y con un buffer de 10 megabytes
   Dim WithEvents myJBin As New AG(10000000)

   Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

	 ' *********************************************************************
	 ' Creamos la lista y la guardamos en un archivo de formato JBin
	 ' *********************************************************************

	 ' Creamos dos usuarios
 	Dim User1 As New User
 	With User1
 		.Name = "Franky Smith"
 		.City = "London"
 		.DateCreated = Now()
 		.Avatar = Image.FromFile("C:\avatarFranky.png")
 	End With

 	Dim User2 As New User
 	With User2
 		.Name = "Mikel Fomi"
 		.City = "Madrid"
 		.DateCreated = Now()
 		.Avatar = Image.FromFile("C:\avatarMikel.png")
 	End With

 	Users.Add(User1)
 	Users.Add(User2)

 	' Tipo de archivo personalizado
 	myJBin.TypeFile = TypeFileJBin.Custom

	' Creamos el binario JBin
	myJBin.Add(User.Count) ' número de usuarios
	For Each item As User In Users ' recorrer la lista
	 	myJBin.AddString(item.Name)
		myJBin.AddString(item.City)
		myJBin.AddDate(item.DateCreated)
		myJBin.AddImage(item.Avatar)
	Next

	' Guardamos la Lista en un archivo
	myJBin.Save("c:\users.jbin")

	' *********************************************************************
	' Procedemos a leer el archivo y cargar los usuarios en otro List nuevo
	' *********************************************************************

	' Iniciar una colección nueva de Users
	Dim newUsers As List(Of User) = New List(Of User)

	' Reinicamos el objeto JBin
	myJBin = New AG()

	' Cargamos el JBin
	myJBin.Load("c:\users.jbin")

	'  creamos el List y lo rellenamos
	Dim num As Integer = myJBin.GetInt()
	For i = 0 To num -1
	Dim myUser As New User
		With myUser
			.Name = myJBin.GetString()
			.City = myJBin.GetString()
			.DateCreated = myJBin.GetDate()
			.Avatar = myJBin.GetImage()
		End With
		newUsers.Add(myUser)
		myUser = Nothing
	Next

   End Sub

   ' la función que nos devuelve si hay un error de lectura o escritura de JBin
   Private Sub JBIN_Error(e As AGError)
       MsgBox(e.Error.ToString & vbCrLf & e.Mensage)
   End Sub

End class

              
Ejemplo en C#
En este ejemplo, creamos una clase 'Class User' para los datos de un usuario, una lista 'List(Of User)' de usuarios y los guardamos en un archivo JBin, despues lo cargamos en una nueva lista vacia.

using System.IO;
using JBin;

public partial class Form1 : Form
{

   // Iniciar una colección en una lista de la clase Users
   List< User> Users = new List< User>();

  // Iniciar Jbin con un buffer de un megabyte
  AG myJBin = new AG();

   private void Form1_Load(object sender, EventArgs e)
   {

	 // *********************************************************************
	 // Creamos la lista y la guardamos en un archivo de formato JBin
	 // *********************************************************************

	 // Creamos dos usuarios
 	User User1 = new User();
 	User1.Name = "Franky Smith";
 	User1.City = "London";
 	User1.DateCreated = DateTime.Now;
 	User1.Avatar = Image.FromFile("C:\avatarFranky.png");

 	User User2 = new User();
 	With User2
 		.Name = "Mikel Fomi"
 		.City = "Madrid"
 		.DateCreated = Now()
 		.Avatar = Image.FromFile("C:\avatarMikel.png")
 	End With

 	Users.Add(User1);
 	Users.Add(User2);

 	// Tipo de archivo personalizado
 	myJBin.TypeFile = TypeFileJBin.Custom;

	// Creamos el binario JBin
	myJBin.Add(User.Count); // número de usuarios
	foreach (User item in Users) // recorrer la lista
	{
	 	myJBin.AddString(item.Name);
		myJBin.AddString(item.City);
		myJBin.AddDate(item.DateCreated);
		myJBin.AddImage(item.Avatar);
	}

	// Guardamos la Lista en un archivo
	myJBin.Save("c:\users.jbin");

	// *********************************************************************
	// Procedemos a leer el archivo y cargar los usuarios en otro List nuevo
	// *********************************************************************

	// Iniciar una colección nueva de Users
	List< User> newUsers = new List< User>();

	// Reinicamos el objeto JBin
	myJBin = new AG();

	// Cargamos el JBin
	myJBin.Load("c:\users.jbin");

	//  creamos el List y lo rellenamos
	int num = myJBin.GetInt();
	for (i = 0; i < num; i++){
		User myUser = new User();
		myUser.Name = myJBin.GetString();
		myUser.City = myJBin.GetString();
		myUser.DateCreated = myJBin.GetDate();
		myUser.Avatar = myJBin.GetImage();
		newUsers.Add(myUser):
		myUser = null;
	}

   }

   // la función que nos devuelve si hay un error de lectura o escritura de JBin
   private void JBIN_Error(AGError e)
   {
        string message = ((char)e.Error).ToString();
        string caption = "Error Detected in Input";
        MessageBox.Show(message , caption);
   }

}