Enero 16, 2017, 01:27:15 pm

Autor Tema: ElektroKit Framework v2.0 | ( Complementos para el núclero de .Net Framework )  (Leído 3405 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado ElektroStudios

  • Me das tu password?
  • **
  • Mensajes: 301
    • Ver Perfil
¿Qué es ElektroKit?




ElektroKit es un sofisticado y completo conjunto de utilidades con nuevas APIs y
extensiones de método para complementar al núclero de .Net Framework,
para ayudarle así a completar su caja de herramientas de programación con
esta librería de classes adicional.




ElektroKit se distribuye en un conjunto de (por el momento) 22 21 librerías que
están enfocadas hacia diversas temáticas:









DESCARGA (v2.0)


Compilación + Documentación + Código fuente
You are not allowed to view links. Register or Login

Paquete Nuget
You are not allowed to view links. Register or Login
(Ensamblados individuales o el framework completo)






DONACIONES


Con la intención de soportar la continuidad de este proyecto,
por el esfuerzo invertido y la motivación para seguir actualizando,
quizás usted quiera considerar donar la cantidad de dinero que desee,
mediante Paypal, haciendo click en la siguuiente imagen:

You are not allowed to view links. Register or Login

¡¡ MUCHAS GRACIAS !!





CONTRIBUICIONES


Para contribuir fisicamente modificando el código fuente,
pueden crear una bifurcación (fork) del proyecto desde GitHub,
haciendo click en esta imagen:

You are not allowed to view links. Register or Login





BUGS, PETICIONES Y SUGERENCIAS


Pueden dejar su comentario en este post para cualquier duda,
petición o sugerencia, todo es bienvenido.

También pueden utilizar el rastreador de problemas de GitHub para reportar bugs,
haciendo click en esta imagen:

You are not allowed to view links. Register or Login





DOCUMENTACIÓN



Todos los miembros del código fuente están documentados,
la documentación se distribuye de varias formas.

Pueden acceder a la documentación online mediante esta imagen:
You are not allowed to view links. Register or Login

También pueden obtener la documentación en formato CHM haciendo click en esta imagen:
You are not allowed to view links. Register or Login

Nótese que existen multitud de ejemplos de código en ambas documentaciones,
los cuales pueden ser un buen punto de partida para comprender como utilizar ElektroKit:

( click para agrandar )
You are not allowed to view links. Register or Login



También pueden inspeccionar la documentación Xml en el código fuente:

( click para agrandar )
You are not allowed to view links. Register or Login

O examinar la descripción de los miembros mediante Intellisense o el examinador de objetos de Visual Studio:








RESUMEN DE MIEMBROS


Resulta imposible mencionar cada una de las funcionalidades de ElektroKit,
realmente son muchísimas (y para eso ya está la documentación),
intentaré hacer un breve resumen resaltando características que
les podrían resultar muy interesantes.







SI TE HA GUSTADO MI APORTE,
¡COMENTA! :)





« Última modificación: ſeptiembre 12, 2016, 10:42:03 pm por ElektroStudios »

Desconectado ElektroStudios

  • Me das tu password?
  • **
  • Mensajes: 301
    • Ver Perfil
Re:ElektroKit Framework v1.2 | ( Complementos para el núclero de .Net Framework )
« Respuesta #1 en: Febrero 13, 2016, 04:34:31 am »
¡¡ NUEVA VERSIÓN v1.1 YA DISPONIBLE !!

El enlace de descarga está en el post principal.

He actualizado el repositorio de GitHub con esta nueva versión, además de eso añadí carpetas con documentación, y un completo lavado de imagen del readme.md de la página de GitHub (conviene leerlo).

Respecto a los cambios realizados en esta nueva versión 1.1, lamentablemente me es imposible llevar un historial de cambios para un proyecto tan gigantesco, ya que cada dia le hago cambios, refactorizaciones, actualizaciones etc, y simplemente no me da el tiempo para llevar un registro de todos los cambios que hago, sería demasiado frustrante,
lo siento, confórmense con este breve resumen de cosas interesantes que he ido implementado desde la versión 1.0 hasta la 1.1, aunque seguro que me dejo muchas por mencionar, ya que son más de 100 nuevas classes en total...

  • La class KeyboardMonitor, para monitorear y reportar los eventos del teclado, un keylogger, vaya.
  • La class MouseMonitor, para monitorear y reportar los eventos del mouse.
  • La class Keyboard, para sintetizar pulsaciones del teclado.
  • La class Mouse, para sintetizar movimientos y clicks del ratón.
  • Un rastreador de movimientos del mouse, a diferencia del mouselogger, este sirve más bien para grabar macros.
  • La clase base UndoRedo y la decene de classes que la heredan, en conjunto son un sistema de hacer/deshacer (undo/redo) basado en stacks, con soporte para muchos controles.
  • La class Hosts, para administrar facilmente los mapeos del archivo HOSTS.
  • La class FirewallUtil, para administrar el firewall de Windows, activarlo, desactivarlo, añadir o eliminar reglas.
  • El type CSharpCompiler, para compilar código fuente en tiempo de ejecución.
  • El type VisualBasicCompiler, para compilar código fuente en tiempo de ejecución.
  • El type genérico FixedStack(Of T), para usar un Stack con una capacidad fija de elementos en la pila.
  • El type genérico FixedQueue(Of T), para usar un Queue con una capacidad fija de elementos en la cola.
  • La class WindowMagnetizer, para añadir magnetismo a la ventana de su aplicación (para adherirla a los bordes de la pantalla)
  • Las classes IniSection, IniKey, IniSectionCollection, IniKeyCollection e IniManager, para administrar las configuraciones de usuario de sus aplicaciones en archivos INI portables.
  • Las classes MruItem, MruFileItem y MruUtil, para crear y cargar listas MRU en sus aplicaciones.
  • El type Hotkey, para registrar atajos del teclado globales (system-wide hotkeys) en sus aplicaciones, de manera muy sencilla y eficiente.
  • Una infinidad de P/Invokes añadidos en el namespace Win32, para usarlos en sus aplicaciones como les venga en gana.
  • Muchas extensiones de método añadidas para distintos types... en general.

Espero que ElektroKit les haya gustado o servido de algo al menos :).

Un saludo!

Desconectado ElektroStudios

  • Me das tu password?
  • **
  • Mensajes: 301
    • Ver Perfil
Re:ElektroKit Framework v1.2 | ( Complementos para el núclero de .Net Framework )
« Respuesta #2 en: Febrero 13, 2016, 04:35:30 am »
¡¡ NUEVA VERSIÓN v1.2 YA DISPONIBLE !!

Como dije anteriormente, me es imposible llevar un historial de cambios para un proyecto de esta magnitud en el que cada 2x3 hago modificaciones, así que solo puedo mencionar algunos de ellos y de forma vaga.

Los cambios más significativos en esta nueva release han sido muchos cambios de diseño en los nombres de los miembros para que resulten más intuitivos, la ampliación de classes, métodos y funciones varias, y sobre todo la ampliación de extensiones de método.

Cambios importantes:
  • Un nuevo namespace, Elektro.Diagnostics, con utilidades enfocadas el logging, debugging, profilling, etc.
  • El namespace Elektro.Application.Debugging y Elektro.Application.Profilling se han unido en el namespace Elektro.Diagnostics. (por motivos de diseño)
  • El namespace Elektro.Audio pasa a llamarse Elektro.Multimedia. (por motivos de diseño)
  • El namespace Elektro.Strings pasa a llamarse Elektro.Text. (por motivos de diseño)
  • El namespace Elektro.Strings.RegEx pasa a llamarse Elektro.Text.RegEx. (por motivos de diseño)
  • Se han modificado todos los nombres de los namespaces de las extensiones de método. (por motivos de diseño)
  • La class NetworkUtil del namespace Elektro.Net se ha dividido en varias classes enfocadas a distintas temáticas. (por motivos de diseño y organización)
  • Se ha ampliado drásticamente la cantidad de extensiones de método, ahora son al rededor de 500 extensiones.

Cambios no tan importantes:
  • El código fuente de la dependencia WindowsAPICodePack ha sido integrado, de forma básica, en el código fuente de ElektroKit (por motivos de portabilidad)
  • Se han ampliado las plataformas de arquitectura en la que se distribuyen las librerías de ElektroKit, ahora están clasificadas en AnyCpu, x64, y x86. (por motivos de portabilidad)
  • Se han añadido optimizaciones de código para .Net Framework +4.5, pero son tan pocas por el momento que he decidido no compilar esas librerías en esta release.
  • Todos los módulos del código fuente se han divido en varios módulos, y algunas classes también. (por motivos de organización)
  • Se ha ampliado en gran medida la cantidad de ejemplos de código en el archivo de ayuda de ElektroKit para los métodos, funciones y propiedades.
  • Algunos bugfixes sin demasiada importancia.

Saludos!

Desconectado ElektroStudios

  • Me das tu password?
  • **
  • Mensajes: 301
    • Ver Perfil
Re:ElektroKit Framework v1.2 | ( Complementos para el núclero de .Net Framework )
« Respuesta #3 en: Febrero 13, 2016, 04:38:11 am »
¡¡ NUEVA VERSIÓN v1.4 YA DISPONIBLE !!
« Última modificación: Julio 23, 2016, 11:08:48 pm por ElektroStudios »

Desconectado ElektroStudios

  • Me das tu password?
  • **
  • Mensajes: 301
    • Ver Perfil
¡¡ NUEVA VERSIÓN v1.5 YA DISPONIBLE !!

Cambios importantes:
  • Se ha reducido la cantidad de ensamblados a 9, unificando varios de ellos.
  • Se ha añadido un nuevo ensamblado, Elektro.Core.dll, por el motivo anterior.
  • Se ha añadido un nuevo ensamblado, Elektro.Application.ThirdParty.dll, con casi una infinidad de utilidades para librerías de terceros, wrappers de aplicaciones command-line, extensiones para frameworks de terceros como Telerik, etc.
  • Se han añadido al rededor de +100 nuevas extensiones de método en total.
  • Se han añadido muchas más utlidades en general, métodos, funciones, types, interfaces, etc.

Cambios no tan importantes:
  • Pequeñas optimizaciones, refactorizaciones, correcciones, y demás.



La lista actual de librerías de terceros referenciadas para desarrollar los miembros del Namespace Elektro.Application.ThirdParty, es la siguiente:

Citar
ABC OCR .NET
AForge
Alvas Audio
Android Lib
Aspose
CodeScales
DiffLib
dnlib
DotNetBar
DotNetZip
EASendMail
FreeImage
FtpClient
GeckoFX
HTMLAgilityPack
IconLib
ImageDraw
Nasosoft Transform
NAudio
NCalc
NDde
SautinSoft
Scintilla.Net
SevenZipsharp
SubtitleWorkshop
TagLib Sharp
Telerik
VistaCoreAudioApi
XnaFan ImageComparison

Notas:
 - Obviamente no es necesario compilar ni usar el ensamblado Elektro.Application.ThirdParty si uno no quiere.
 - Las dependencias no van incluidas en el código fuente por motivos éticos... (en algunas de ellas, es ilegal, como las de Telerik).

Saludos!

Desconectado ElektroStudios

  • Me das tu password?
  • **
  • Mensajes: 301
    • Ver Perfil
¡¡ NUEVA VERSIÓN v1.6 YA DISPONIBLE !!

Novedades (no se mencionan todas):
  • El type OutlookMailClient, para administrar una cuenta online de Outlook.com (Hotmail) mediante la API de Microsoft Office 365 y Active Directory (ADAL). No es una class muy completa, pero facilita y simplifica tareas cotidianas como autorizarse, obtener acceso a una carpeta, obtener los mensajes de una carpeta, eliminar mensajes y/o moverlos a otra carpeta, con lo que se puede desarrollar un bonito crawler en unos pocos y sencillos pasos, u otras trastadas mayores...
    (esta class usa métodos asíncronicos así que solo es visible en la versión de ElektroKit que corre bajo los runtimes de .Net Framework 4.5)
  • La class ImgurUtil y el type ImgurUploader, para hospedar imágenes en Internet mediante la API de Imgur.
  • La class DwmPreviewManager, para administrar las imágenes que windows usará para generar la previsualización en miniatura d enuestra app, y también la previsualización peek (Aero Peek). Esta funcionalidad es algo curiosa, me gusta inetntar cosas exóticas :).
  • Nuevas propiedades para trucar algunos parámetros de Windows en la class SystemParameters, como por ejemplo mostrar/ocultar los archivos ocultos del sistema y los archivos protegidos, activar/desactivar la selección de elementos del Explorer mediante el checkbox de selección, ejecutar las instancias de Explorer.exe en procesos paralelos, activar/desactivar el diálogo de confirmación de eliminación de archivos, y mucho más!.
    (los cambios realizados mediante esas propiedades tienen efecto AL INSTANTE, a diferencia de otras implementaciones que se pueden encontrar por Internet que se basan en un uso brusco del registro de Windows lo que implica un reinicio de sesión para aplicar los cambios ;-D)
  • Métodos para la compresión de imágenes (reducción de tamaño más bien), y la extracción y/o el conteo de iconos de un archivo, en la class ImageUtil.
  • Métodos para comprobar la versión del sistema perativo actual (incluyendo Windows 10), en la class OS.
  • Métodos para administrar el esquema de energía actual, en la class Power (véase también el type PowerPlan).
  • Métodos de carga y descarga de Hives de registro (SAM, NTUSER.DAT, etc.) en la class Registry (métodos: LoadHive y UnloadHive).
  • Propiedades para establecer el modo de error de la aplicación o el thread actual, en la class AppUtil (Propiedades: ProcessErrorMode y ThreadErrorMode)
  • Nuevos métodos de descarga asincrónica de archivos, en la class WebUtil.
  • El método ShowShellAboutDialog en la class Applets, para mostrar un diálogo de shell-about personalizado.
  • Métodos para asignar un proceso como crítico, y también para asignar o eliminar privilegios expecíficos de procesos, en la class ProcessUtil.
  • La class VisualBasicProjectFileManager para manipular en tiempo de ejecución las propiedades de un archivo de proyecto de VB.NET (proyecto.vbproj).
  • La class DelphiUtil con un simple método de conversión de equivalencia de tipos para ayudar sobre la interoperabilidad entre Delphi y .NET Framework.
  • Los siguientes types para la interoperabilidad entre Win32: SafeWindowHandle, SafeIconHandle, SafeBitmapHandle, SafeCursorHandle, SafeRegionHandle, y ZeroInvalidHandle (base class).
  • La enumeración HResult para facilitar la programación de código no administrado, la cual contiene los códigos HRESULT más conocidos, incluyendo los códigos HRESULT controlados por las excepciones administradas de .NET Framework.
  • Una basta cantidad de nuevas funciones Win32 (públicas) en la class NativeMethods, con sus correspondientes types, interfaces y enumeraciones en el namespace Elektro.Interop.Win32.
  • Se ha extendido considerablemente los types del namespace Elektro.Application.ThirdParty.TagLibSharp, ahora soportan la manipulación de tags APEv2 y Lyrics3.
  • La cantidad de extensiones de método actuales asciende a 587, aquí tienen la lista:
    You are not allowed to view links. Register or Login

Cambios:
  • He modificado el nombre de todos los valores de la enumeración WindowsMessages y EditControlMessages, del patrón "WmAbc" a "WM_Abc"; no es correcto añadir un guión bajo en .NET, pero esto facilitará la experiencia de usabilidad al programar en código no administrado.
  • He destripado y eliminado todos los miembros innecesarios del proyecto de terceros WindowsAPICodePack, como los controles de usuario, por lo que ahora es una versión reducida y liviana específica para el uso de ElektroKit. Tenerlo en cuenta, por que he eliminado muchas características que venían en la versión completa de Microsoft.
  • El proyecto ElektroKit.sln ahora es compilado con Visual Studio 2015, lo comento por que no se muy bien si esto afectará a usuarios que intenten compilar en versiones anteriores de Visual Studio.
  • El tamaño total de las librerías de ElektroKit, tanto en modo DEBUG como RELEASE, se ha reducido bastante, ahora pesan alrededor de 1,20 MB en su totalidad los 9 archivos .dll. Esto se debe al modo en que las compila Visual Studio 2015.
  • La class Input, que está relacionada con la API Win32 RAW_INPUT (implementada en funcionalidades de keylogging y mouselogging en el namespace Elektro.Core.IO) se ha dividido en dos classes distintas, Input32 y Input64. Esto es experimental y no lo he testeado, en caso de que Input32 no funcionase en equipos de 32-Bit entonces usar siempre la class Input64, debería funcionar.

Correcciones:
  • El método RedirectUrl en la class WebUtil no redireccionaba correctamente si la url apuntaba hacia ciertos servicios conocidos, como por ejemplo una url de RapidGator.net.
    El motivo de este fallo es específico de cada servidor y sus headers, pero como solución generalizada y alternativa he añadido un overload para especificar un user-agent personalizado, lo cual funcionará según que servicios (para RapidGator.net, funciona).
  • No se estaba disminuyendo correctamente a 0 la cantidad de referencias R.C.W. de algunos objetos COM que se usan internamente por algunas classes de ElektroKit,
    Esto se ha solucionado llamando directamente al método Marshal.FinalReleaseComObject() en lugar de disminuir 1 sola referencia con Marshal.ReleaseComObject().
  • Se han limpiado y dereferenciado todos los ensamblados y namespaces de .NET Framework innecesarios.
  • Algunos módulos de extensiones no eran visibles mediante Intellisense al intentar escribir el namespace completo, eso se debe a que el nombre del módulo se llamaba de la misma manera que algún método en su interior, la solución ha sido cambiar el nombre de los módulos conflictivos.
    Este cambio no afecta en absoluto en caso de que estuviesemos utilizando las extensiones de método de forma regular (type.Extension()) y no escribiendo el namespace completo (Namespace.Extension(type)).
  • Constantes refactorizaciones/optimizaciones por aquí y por allá, sin mayor importancia en realidad, pero los nombres de algunos miembros de ElektroKit pueden haber cambiado, o su modo de empleo.

Saludos!

Desconectado ElektroStudios

  • Me das tu password?
  • **
  • Mensajes: 301
    • Ver Perfil
¡¡ NUEVA VERSIÓN v1.7 YA DISPONIBLE !!

En esta versión, los cambios más importantes son estéticos y no afectan al usuario final. Literálmente he tenido que modificar una a una las más de mil classes/archivos que componen a ElektroKit para realizar estos cambios; ha sido una refactorización bastante completa de la jerarquía y herencia de miembros, así que aunque esto no sea una actualización con muchas características nuevas, se puede decir que es una gran actualización como para llamarse v1.7.

Cabe mencionar que como consecuencia de los cambios estéticos, las librerias ocupen menos, y los documentos Xml mucho menos.

También he corregido algunos pequeños bugs, he añadido nuevos métodos y types, y he refactorizado algunas partes del código fuente, pero no hay nada que destacar en todo ello.

Saludos.

Desconectado ElektroStudios

  • Me das tu password?
  • **
  • Mensajes: 301
    • Ver Perfil
¡¡ NUEVA VERSIÓN v1.8 YA DISPONIBLE !!

Cambios y novedades (no se menciona todo):

  • Todas las clases de ElektroKit que heredan del tipo EventArgs y Exception se han agrupado en namespaces/directorios aparte, ahora el código fuente y su representación visual está algo más organizada.
  • Añadida la class HUDForm en el namespace Elektro.Application.ThirdParty.SharpDX.Types para tener la base principal con la que poder desarrollar una ventana HUD para un juego de terceros (es muy básico).
  • Añadida la class LibVideoUtil para descargar videos de Youtube mediante la librería libvideo (el sucesor no oficial de YoutubeExtractor) Elektro.Application.ThirdParty.LibVideo.Tools.LibVideoUtil.
  • Añadido varios módulos de extensiones para facilitar el uso de la API oficial de Youtube, en el namespace: Elektro.Application.ThirdParty.Google.Youtube.Extensions.
  • Añadido métodos adicionales de descagra de datos en la class WebUtil (DownloadData(), DownloadDataAsync(), DownloadImage(), DownloadImageAsync()).
  • Añadido extensiones adicionales para el reciclaje de archivos y directorios en los módulos de extensiones: Elektro.Core.IO.Extensions.FileInfo y Elektro.Core.IO.Extensions.DirectoryInfo. (FileInfo.Recycle() y DirectoryInfo.Recycle())
  • Añadido métodos de extensiones para el agrupamiento y la unión de agrupamientos para colecciones IEnumerable , en el namespace: Elektro.Core.Generics.Extensions.IEnumerable (archivos: Group.vb y Join.vb).

PD: Muchas de las características mencionadas de ElektroKit solo están disponibles en los ensamblados compilados bajo .Net Framework 4.5.

Saludos!

Desconectado ElektroStudios

  • Me das tu password?
  • **
  • Mensajes: 301
    • Ver Perfil
¡¡ NUEVA VERSIÓN v1.9 YA DISPONIBLE !!

Cambios y novedades (no se menciona todo)

  • ElektroKit ahora también se distribuye bajo .NET Framework 4.6.

  • La herramienta AutomatedCompilerTask.exe que acompaña al código fuente de ElektroKit, la cual sirve para compilar de forma totalmente automatizada todas las configuraciones y plataformas del proyecto, ha sido actualizada para soportar .NET Framework 4.6.

  • Añadida la class GoogleSearch para utilizar el servicio de búsqueda de Google (de forma gratuita) mediante el type GoogleSearchOptions, y obtener los resultados de búsqueda representados con el type GoogleSearchResult.

  • El método genérico Elektro.Core.Diagnostics.Tools.ProfillingUtil.SwapObjects(Of T)(T, T) para invertir el valor de dos objetos.

  • El método Elektro.Application.UI.Tools.CLI.CLIUtil.SpinCursor() y Elektro.Application.UI.Tools.CLI.CLIUtil.SpinCursorTask() para crear una animación peculiar de "cargando..." para una aplicación de consola.


  • Se han añadido los siguientes métodos asincrónicos a la class Elektro.Application.UI.Tools.CLI.TypeWritter
    • WriteTask() As Task
    • WriteLineTask() As Task
    • WriteColorTask() As Task
    • WriteColorLineTask() As Task


  • La extensión NameValueCollection.ToGETRequestString() para facilitar el formato de un string para realizar una petición GET a un servicio Web.

  • Más overloads añadidos para el método Elektro.Application.Tools.AppUtil.SleepRandom()

  • La class Elektro.Interop.Tools.CompilerUtil.SubsystemVersions pasa de ser privada a pública, para el uso que se le pueda dar fuera de ElektroKit.

  • La class Elektro.Interop.Tools.CompilerUtil.SourceCodeTemplates pasa a llamarse Elektro.Interop.Tools.CompilerUtil.Snippets y el contenido se ha dividido en las siguientes classes:
    Elektro.Interop.Tools.CompilerUtil.Snippets.VisualBasicNET
    Elektro.Interop.Tools.CompilerUtil.Snippets.CSharp

  • Se han añadido las siguientes classes con varios snippets y plantillas de código:
    • Elektro.Interop.Tools.CompilerUtil.Snippets.DOS
    • Elektro.Interop.Tools.CompilerUtil.Snippets.javascript
    • Elektro.Interop.Tools.CompilerUtil.Snippets.Python
    • Elektro.Interop.Tools.CompilerUtil.Snippets.Regedit
    • Elektro.Interop.Tools.CompilerUtil.Snippets.Ruby
    • Elektro.Interop.Tools.CompilerUtil.Snippets.VisualBasicScript

  • Se han añadido overloads del método Elektro.Interop.Tools.CompilerUtil.CompileProject()para poder utilizar el compilador MsBuild.exe para .NET Framework 4.5, 4.6, y 4.6.1,
    y también para poder compilar una configuración y plataforma específica del proyecto (ej. Release -> Any CPU)

  • Una variedad de extensiones para la conversión de types y exportación de formatos para los siguientes types: DataTable, DataGridView, ListView.
    Lista completa:
    • DataTable.ExportToCSV() As String
    • DataTable.ExportToXml() As String
    • DataTable.ToDataGridView() As DataGridView
    • DataTable.ToListView() As ListView
    • DataTable.ToList() As List(Of Dictionary(Of String, Object))

    • DataGridView.ExportToCSV() As String
    • DataGridView.ExportToXml() As String
    • DataGridView.ToDataTable() As DataTable
    • DataGridView.ToListView() As ListView

    • ListView.ExportToCSV() As String
    • ListView.ExportToXml() As String
    • ListView.ToDataTable() As DataTable
    • ListView.ToDataGridView() As DataGridView

    ( todos ellos con ejemplos de uso prácticos y sencillos. )


Correcciones

  • En el método Elektro.Application.Tools.AppUtil.SleepRandom(), el parámetro del tipo TimeSpan se interpretaba en segundos, no millisegundos.

Desconectado ElektroStudios

  • Me das tu password?
  • **
  • Mensajes: 301
    • Ver Perfil
Re:ElektroKit Framework v2.0 | ( Complementos para el núclero de .Net Framework )
« Respuesta #9 en: ſeptiembre 12, 2016, 10:43:13 pm »
¡¡ NUEVA VERSIÓN v2.0 YA DISPONIBLE !!

Aparte de las típicas adiciones de métodos y funciones, la corrección de algunas cosas, o la actualización y refactorización de otras tantas, no solo del código sino también de la documentación, estos son algunos de cambios y novedades importantes de esta nueva versión:

  • Se ha añadido un nuevo método experimental SafePInvoke en la class Elektro.Interop.Tools.UnmanagedUtil, su propósito es doble, proporcionar mayor control al llamar a funciones Win32 y hacerlo escribiendo menos código del habitual.
     
  • Se ha añadido una nueva class Elektro.Core.Xml.Tools.JsonUtil, con utilidades para código JSON, entre ellos convertir un código JSON a varios tipos admiinstrados de Xml, y un método para embellecer y/o minificar un código de JSON (BeautifyJson/MinifyJson).
     
  • En el espacio de nombres Elektro.Application.ThirdParty.Office365.Types, la class OutlookMailClient pasa a llamarse OutlookMailClientExperimental, y ahora hay una nueva class OutlookMailClient. La diferencia está en que se utilizan las nuevas builds de la API de Microsoft, he dejado la versión antigua o "experimental" por que en mi caso me resulta muy útil, sobre todo por la facilidad de login en una cuenta de Outlook.com.
     
  • Se ha añadido un nuevo type, Elektro.Core.IO.Types.FileSignature, con el que podemos crear y representar una firma de archivo. Y el type Elektro.Core.IO.Types.FileTypeMatch con el que podemos obtener los datos de un análisis de firmas.
     
  • Más overloads añadidos a la class Elektro.System.Tools.Registry para la manipulación de entradas del registro de Windows.
     
  • Todas las definiciones de funciones de la API de Windows se han reorganizado de forma alfabetica (por nombre de la dll) de la siguiente manera:

     
  • Se han añadido las siguientes extensiones de método en el espacio de nombres Elektro.Core.Generics.Extensions.Nullable para la conversión entre tipos de datos nulables:

    • Nullable(Of TSource, TTarget).ConvertTo(Func(Of TSource, TTarget)) As Nullable(Of TTarget)
    • Nullable(Of T)().ConvertToNonNullable(T) As T()

  • Se han añadido una nueva class Elektro.Core.IO.Tools.FileTypeUtil.vb la cual sirve para determinar el tipo de archivo de un archivo, examinando la cabecera con una lista de firmas (la cual es extendible en tiempo de ejecución), estos son las funciones expuestas en dicha class:
     
    • GetFileTypeMatch(FileInfo, FileType) As FileTypeMatch
    • GetFileTypeMatch(String, FileType) As FileTypeMatch
    • GetFileTypeMatches(FileInfo) As List(Of FileTypeMatch)
    • GetFileTypeMatches(FileInfo, FileType()) As List(Of FileTypeMatch)
    • GetFileTypeMatches(String) As List(Of FileTypeMatch)
    • GetFileTypeMatches(String, FileType()) As List(Of FileTypeMatch)

  • Se ha añadido una nueva class Elektro.Multimedia.Gaming.Types.SnesRom para representar y manipular una ROM de super nintendo (para hacer rom hacking),
    en combinación con el type SnesCountry y las siguientes enumeraciones:

    • SnesBankTypeEnum
    • SnesCartridgeTypeEnum
    • SnesHeaderTypeEnum
    • SnesLicenseCodeEnum
    • SnesRegionTypeEnum
    • SnesRomSizeEnum
    • SnesSramSizeEnum

  • Se han añadido más plantillas de código fuente y snippets predefinidos en el espacio de nombres Elektro.Interop.Tools.CompilerUtil.SourceCodeTemplates:

    • SourceCodeTemplates.PowerShell
    • SourceCodeTemplates.Regedit

    Y se han actualizado y/o también optimizado el resto de plantillas de otros lenguajes que ya estaban definidos.
     
  • Se ha añadido una nueva class Elektro.System.Tools.SystemInfo.Steam para obtener información de una instalación del cliente de video juegos Steam, mediante las sigueintes propiedades

    • AccountRecoveryUrl As String
    • ClientCulture As CultureInfo
    • ClientFile As FileInfo
    • ClientLanguage As String
    • InstallDir As DirectoryInfo
    • IsInstalled As Boolean
    • RegistryInstallPath As String
    • RegistryUninstallPath As String
    • Version As Version

  • Se ha añadido la class Elektro.System.Tools.SystemInfo.Volume para obtener información de los volúmenes (particiones) montados en el sistema. Estas son algunas de las propiedades que podemos encontrar en dicha class:

    • ExtendedUncPathPrefix As String
    • IsCompressed(String) As Boolean
    • IsReadOnly(String) As Boolean
    • MaxComponentPathLength(String) As Integer
    • MaxExtendedPathLength As Integer
    • MaxPathLength As Integer
    • SerialNumber(String) As String
    • SupportsEncryption(String) As Boolean
    • SupportsExtendedFileAttributes(String) As Boolean
    • SupportsExtendedPath(String) As Boolean
    • SupportsFileCompression(String) As Boolean
    • SupportsHardLinks(String) As Boolean

  • Se han añadido los siguientes tweaks en la class Elektro.System.Tools.Tweaking.SystemParameters para manipular distintos aspectos de la configuración del sistema operativo:

    • AeroPeekEnabled As Boolean
    • BingSearchEnabled As Boolean
    • CombineSystemTrayIcons As Boolean
    • CombineTaskbarApplications As Boolean
    • ConsoleBackColor As ConsoleColor
    • ConsoleBufferAmount As Integer
    • ConsoleBufferSize As Integer
    • ConsoleEditEnabled As Boolean
    • ConsoleForeColor As ConsoleColor
    • ConsoleTransparency As Single
    • Consolev2Enabled As Boolean
    • CortanaEnabled As Boolean
    • CortanaSearchBoxEnabled As Boolean
    • CortanaSearchEnabled As Boolean
    • DesktopAutoColorizationEnabled As Boolean
    • ExplorerNavigationPanelEnabled As Boolean
    • ExtendedPathsEnabled As Boolean
    • FolderMergeConflictDialogEnabled As Boolean
    • HideDrivesWithNoMedia As Boolean
    • HotCornerTopLeftEnabled As Boolean
    • LowDiskFreeSpaceNotificationEnabled As Boolean
    • MinimumSelectedItemsToInvokeMenu As Integer
    • MyPCDisplayName As String
    • NotepadWordwrapEnabled As Boolean
    • NotificationCenterEnabled As Boolean
    • SecurityCenterNotificationsEnabled As Boolean
    • ShowFrequentDirsInQuickAccess As Boolean
    • ShowFullPathInExplorer As Boolean
    • ShowOneDriveInFolderBrowser As Boolean
    • ShowOneDriveInMyPC As Boolean
    • ShowQuickAccessInFolderBrowser As Boolean
    • ShowQuickAccessInMyPC As Boolean
    • ShowRecentItemsInQuickAccess As Boolean
    • ShowShortcutFileExtension As Boolean
    • ShowShortcutSuffix As Boolean
    • ShowUrlFileExtension As Boolean
    • ShowWindowsStorePinnedInTaskbar As Boolean
    • SlowSearchNotificationEnabled As Boolean
    • WindowArrangementEnabled As Boolean
    • WindowsErrorReportingEnabled As Boolean



resuelto
Framework para desarrollo Web

Iniciado por pahcko

3 Respuestas
860 Vistas
Último mensaje Agosto 06, 2012, 11:17:14 am
por pahcko
exclamation
Metasploit Framework 3.2 Portable para Windows

Iniciado por c4x30x

0 Respuestas
2101 Vistas
Último mensaje Marzo 18, 2009, 11:28:45 am
por c4x30x
xx
FUEL: framework para desarrollo de extensiones de Firefox

Iniciado por shevchenko

0 Respuestas
1044 Vistas
Último mensaje Julio 04, 2008, 11:12:17 am
por shevchenko
exclamation
OWASP Mantra Security Framework para análisis de aplicaciones web

Iniciado por cemasmas

0 Respuestas
1084 Vistas
Último mensaje Junio 24, 2011, 05:59:11 pm
por cemasmas
resuelto
Net Framework 4

Iniciado por CumOnYourFace

2 Respuestas
586 Vistas
Último mensaje Noviembre 06, 2010, 02:30:08 pm
por CumOnYourFace
resuelto
framework-3.3.3

Iniciado por Kamus-pc

3 Respuestas
843 Vistas
Último mensaje Marzo 13, 2010, 10:42:51 pm
por trashhgoo
xx
Framework

Iniciado por jorgelio300

2 Respuestas
720 Vistas
Último mensaje Octubre 03, 2010, 09:24:13 am
por jorgelio300
question
Metasploit Framework

Iniciado por fagu24

2 Respuestas
718 Vistas
Último mensaje Junio 19, 2011, 12:23:19 pm
por JuanGenius
question
Funciones en .Net Framework 3.5??

Iniciado por pahcko

1 Respuestas
652 Vistas
Último mensaje Marzo 05, 2011, 07:25:20 pm
por .xAk.
xx
que tan populares son los framework.net

Iniciado por DarkCoolZeroLammer

12 Respuestas
2744 Vistas
Último mensaje Abril 08, 2010, 03:33:26 am
por MoisesE