Etiqueta: c#

  • Sergio A. Campos de EXCELeINFO entrevista a elGuille

    Entrevista a Guillermo Som (elGuille) por Sergio Alejandro Campos para el canal EXCELeINFO

    Pues eso… el pasado domingo 14 de junio de 2020 (una semanita después de cumplir los 63 años de edad), Sergio Alejandro Campos me hizo una entrevista en vivo y en directo para su canal de YouTube EXCELeINFO.

    Ya no puedes verla en directo (elemental pequeño saltamontes) pero sí puedes ver la grabación de algo más de 1 hora (1h 25m 35s).

    Este es el enlace para ver la entrevista:
    Ver la entrevista en YouTube.

    Y aquí abajo te dejo la entrevista incrustada 😉

    Nos vemos.
    Guillermo

  • Compilar y ejecutar

    Compilar y ejecutar es una utilidad creada con WPF (.NET 4.7.2) para compilar y ejecutar aplicaciones tipo consola desde la misma aplicación. Permite guardar el código de VB y C# así como la salida de la consola. Permite colorear el código (tanto de VB como el de C#) y tiene algunos trucos para redirigir la salida de un ejecutable, sincronizar el contenido de dos TextBox, añadir y recuperar texto (o el contenido) de un RichTextBox, y más…

    Para compilar utiliza Roslyn 2.0.1 (Microsoft.CodeDom.Providers.DotNetCompilerPlatform) de esta forma permite el uso de código para compilar con C# 7.3 y VB 15.5 ya que el compilador predeterminado de CodeDom es para las versiones 5 de C@ y 11 de Visual Basic. Por tanto, puedes usar Tuplas si quieres

    En la figura 1 puedes ver la aplicación en ejecución con un código de Visual Basic coloreado, mostrando la salida de la aplicación (de consola).

    Figura 1. La aplicación en funcionamiento
    Figura 1. La aplicación en funcionamiento

    En la salida por la consola las vocales acentuadas (con tildes) no se mostraban bien y he usado un truco para convertir el texto de la consola de forma que se pueda leer sin problemas, concretamente usando la codificación de la página de códigos 437 usando GetEncoding(437).

    Este es el código (para VB) que hace la conversión de lo leído por la salida estándar de un objeto Process y convirtiéndolo en texto (un truco para convertir un MemoryStream en texto o cadena).

    ' Convertir la salida usando el código de página 437
    ' que es la usada en MS-DOS (línea de comandos)
    Dim texto = p.StandardOutput.ReadToEnd()
    Dim ms As New MemoryStream(ASCIIEncoding.[Default].GetBytes(texto))
    texto = Encoding.GetEncoding(437).GetString(ms.ToArray())
    

    En otra ocasión te explicaré con más detalle todas las cosillas que la aplicación hace, por ahora te dejo el zip con el código fuente de Visual Basic en una solución para Visual Studio 2017 además del ejecutable y si prefieres instalarla usando ClickOnce, también lo puedes hacer, más abajo tienes los enlaces.

    Comentarte que en el ZIP se incluye los packages de Roslyn.

    Y esto ews todo por ahora…

    Espero que te sea de utilidad

    Nos vemos.
    Guillermo

    P.S (27-feb-2021 15:19)
    No sé porqué esto lo tenía como borrador… seguramente porque no estará completa la entrada, pero… así la dejo 😉

Salir de la versión móvil