´

April 2010 - Artículos

C# – Creating Toolbars, Buttons and Menus for Internet Explorer

This is a cross copy of my original blog:

http://juank.black-byte.com/reviews-c-creating-toolbars-buttons-and-menus-for-internet-explorer/

------------------------------------

Hi!,

Recently I was looking for documentation to be able to create components for IE, traditional things like toolbars, buttons and menus.

The problem


In the beginning I was excited, but once I caught the appropriate documentation I found something that could be unfortunate, to create this kind of components for IE I had to make use of COM technology, so I had two possible ways:


  1. Program this Add-ons using C++
  2. Program the Add-ons using C# but using COM interoperability

 

But then came the great disappointment. Whatever the choice, programming using COM technology seemed inevitable. Bad news.


Not that COM is an impossible subject, what happens is that I believe one has to assess these two aspects:

  1. Effort / Benefit proportion: How long will I spend creating the solution and How much should I charge?
  2. Maintenance time, How much time must I invest in supporting the solution once it is delivered?

In my case if I don’t use COM but use a managed component, both aspects above would be playing for me. However, I think it is clear for any .NET developer, that if I use COM both aspects above would be playing against me.

The Solution


I was set to find across the internet some product that would allow me create Add-ons for IE using managed components, the pleasant surprise was when I found one called “Add-In Express for IE” I stopped for a while to review what kind of things can I can do using this Tool and I realized that the tool was exactly I was looking for, the solution to my problems.

What does “Add-In Express for IE”?


A few paragraphs back I mentioned two important aspects where clearly I specified that cost/benefit is something very important to take in account.

I want to invite you to review some articles that show How to create Add-ons for IE using COM:


Creating Add-ons for Internet Explorer: Toolbar Buttons

Creating Custom Explorer Bars, Tool Bands, and Desk Bands


Summarize the most troublesome and annoying issues to just to create a button and a toolbar:

  1. Create and modify registry keys
  2. I must write code using some ‘Service Providers’
  3. I must use in my code some things to ‘Query Interfaces’

What???

Yes, this is what I asked too, Why I must concerned about all those items if I just want to create two of the most common and simple things in Windows UI development?


For sure there exist some heavy reasons to do that, but neither me nor my client are interested in those heavy reasons.


“Add-In Express for IE” has rich functionality, very interesting and very useful, but for now I will sum up all in one:

  • You can create a complete solution just coding what you really need. 

 

I mean, if I want just to create a button in a toolbar, all I have to do in my code is to handle the click event over the button, nothing else. I don’t need to take care of registry keys, service providers or query interfaces of I don’t know…what… Simply I code what I need, everything else is done by Add-In Express for me.




Great!!!


And then…


“Add-In Express for IE” is one of those tools that make you give thanks to God ( whatever your God ) for having found it, with this tool you can create solutions in a very fast way concentrating in What you need but not on How you do it.


Among other things that makes this too pay off, you can find:

  1. Creating an IE Add-on in a record time
  2. Version neutrality 
  3. Support for 32 and 64 bit Add-ons
  4. Ease to test your solution in IE without necessity to go into details of the full installation process of your Add-on 
  5. Simplicity of creating a solution installer, it is done automatically. 

In my next article I would expose the ease of create a solution, I mean we’ll come into the tech! Meanwhile I invite you to check these illustrative videos available in the Add-In express site:

http://www.add-in-express.com/programming-internet-explorer/video.php



I hope this article make your life easy



Greetings.

C# – Creando Toolbars, Botones y Menús para IE

Esta es una copia cruzada del artículo original en mi blog:

http://juank.black-byte.com/reviews-addin-express-internet-explore/

----------------------------------------------

Hola ,

Hace poco estuve buscando documentación para poder crear componentes para IE, cosas tradicionales como Toolbars, botones y menús.

 

El problema

En principio estaba entusiasmado, pero una vez di con la documentación adecuada me encontré con algo que puede parecer desafortunado, para poder crear este tipo de componentes paras IE tenía que hacer uso de componentes COM, así que solo tenía dos salidas posibles:

  1. Programar estos add-ons con C++
  2. Programarlos con C# pero utilizando interoperabilidad con COM

 

Pero luego llegó la gran decepción…

Genial! cualquiera que fuera la opción programar con COM parecía inevitable. Malas noticias.

 

No es que COM sea un tema imposible, lo que sucede es que yo creo que uno tiene que evaluar dos aspectos:

  1. La proporción esfuerzo/beneficio: cuanto me demoro en crear la solución y cuanto debo cobrar
  2. El tiempo de mantenimiento, que tiempo debo invertir en estabilizar la solución después haberla entregado

 

En mi caso sino utilizara COM sino un componente administrado, los dos puntos anteriores estarían en mi favor, pero es claro para cualquier desarrollador de .NET que en el caso de COM  esos puntos jugarían en mi contra.

 

La solución

Me puse en tarea de buscar por internet algún producto que me permitiera crear add-ons para internet explorer con componentes administrados, la grata sorpresa fue que encontré uno llamado “Add-In Express for IE” me detuve por unos instantes a revisar que cosas podía hacer con esta herramienta y me di cuenta que realmente era la herramienta que estaba buscando, la solución a mis problemas.

 

Qué hace Add-In Express for IE?

Unos párrafos atrás mencioné dos puntos importantes en los cuales claramente identifico que el tema de costo/beneficio es algo muy importante a tener en cuenta.

 

Quiero invitarlos a revisar algunos artículos que muestran como crear add-ons para Internet Explorer utilizando COM:

 

Creating Add-ons for Internet Explorer: Toolbar Buttons

Creating Custom Explorer Bars, Tool Bands, and Desk Bands

 

Resumiré los temas más molestos y engorrosos para tan solo crear una barra de herramientas y un botón:

  1. Crear y modificar llaves de registro
  2. Tener que crear mi código utilizando algunos ‘Proveedores de Servicios’
  3. Tener que utilizar en mi código algunas cosas para ‘Consultar Interfaces’

¿Qué???

Si, eso mismo me pregunte yo, porque tengo que ver todos esos temas si lo único que quiero es crear dos de las cosas mas sencillas que se pueden hacer en la UI de un programa en Windows?

 

Seguramente hay razones de peso, pero ni a mi ni a mi cliente les interesan esas razones de peso.

 

“Add-In Express for IE” tiene muchas funcionalidades, muy interesantes y muy útiles, pero por ahora yo las resumiré en una:

  • Te permite crear la funcionalidad completa solo codificando lo que realmente necesitas

 

Es decir si quiero crear un toolbar con un botón, lo único que tendré que hacer por código es programar el evento clic del botón nada más. No necesito pensar en llaves de registro, proveedores de servicios ni consultar interfaces de no se que… simplemente programo lo que necesito, el resto Add-In Express lo hace por mi.

 

Genial!!!

 

Y Entonces…

“Add-In Express for IE” es una herramienta de esas que hacen que des gracias a Dios ( cualquiera que sea el tuyo ) de haberlas encontrado, con esta herramienta se pueden crear soluciones de manera muy rápida concentrándote en el Qué necesitas y no en el Cómo lo haces.

 

Dentro de las cosas que hace esta herramienta y que realmente hacen que su precio se pague por si solo se encuentran:

  • Crear Add-in para internet explorer en tiempo record
  • Ser neutral entre diferentes versiones de IE 
  • Soporte para 32 y 64 bit
  • Facilidad para testear tu solución en IE sin necesidad de realizar el proceso de instalación completo
  • Facilidad para crear el instalador de manera automática

 

En mi próximo artículo expondré la facilidad con la que se puede crear una solución, es decir entramos a lo técnico!, mientras tanto los invito a checar los videos ilustrativos que disponibles en la página:

http://www.add-in-express.com/programming-internet-explorer/video.php

 

Espero que este artículo le facilite la vida a muchas personas!

 

saludos.

MVP por segundo año consecutivo – reflexiones, notas y agradecimientos

Esta es una copia cruzada del articulo original escrito en mi blog:

http://juank.black-byte.com/eventos-mvp-segunda-vez/

 ----------

Enhorabuena. Nos complace presentarle el programa de nombramiento MVP de Microsoft® de 2010. Este nombramiento se concede a los líderes excepcionales de la comunidad técnica que comparten de forma activa su experiencia de alta calidad y de la vida real con otras personas. Le agradecemos especialmente la contribución que ha realizado en las comunidades técnicas en el área de Visual C# a lo largo del pasado año.

 Así comienza el email con el que Microsoft me ha notificado, por segundo año consecutivo como Microsoft MVP Visual C# .

 

Para mí es motivo de orgullo ser galardonado por segundo año consecutivo, ser galardonado como MVP se siente muy cool, es como estar escalando una montaña solo por placer y al final en la cima ser recibido con un refrescante baso de agua que no esperabas.

MVP, el premio nobel y premios de concurso

Alguien alguna vez (y perdón que no lo cite pero no recuerdo quien fue), me dijo que ser MVP es un tipo diferente de premio.

Si ves un concurso de belleza, todas las candidatas hacen todo lo que deban hacer para ganar, si vas a un partido de futbol sucede lo mismo, así como en las carreras, los bolos, la universidad, las elecciones presidenciales etc. Todos hacen, dicen, crean e incluso algunos inventan y engañan porque tienen muy claro que hacen lo que hacen para ganarse el concurso, un premio.

Ganarse un premio nobel es diferente. Pero como hace alguien para ganarse un premio nobel? ciertamente nadie sabe que debe hacer para ganarse un premio nobel porque de hecho los ganadores del premio nobel tienen muchos objetivos en su cabeza , muchos objetivos menos el de ganarse un premio nobel.

Nadie espera que al final de un largo año(o años ) de investigación o de gestión por la paz o de escritura de obras literarias llegue el comité del premio nobel a premiarlo. No, eso no es así. Simplemente cada cual da lo mejor que puede en el campo que le corresponde, y lo hace por pasión porque persigue un sueño, porque hace lo que le gusta y sabe que así engrandece al ser humano y se engrandece para sí mismo.

El premio nobel no se busca, simplemente llega como resultado colateral del inmenso trabajo que haces.

Así es el galardón MVP, no se puede buscar ser MVP n i trabajar arduamente para llegar a ser MVP, porque de hecho puedes llegar a trabajar arduamente durante años y nunca llegar a serlo por X circunstancias*.

Aunque no se si sea un ejemplo muy adecuado, el galardón MVP es como el abrazo de tu madre al graduarte de la universidad, estudiaste e hiciste un excelente trabajo de grado para graduarte como profesional, pero el abrazo de tus seres queridos es un reconocimiento especial a tu labor.

Agradecimientos

Realmente, y lo repito, para mi es un motivo de satisfacción enorme el ser reconocido como MVP por segundo año consecutivo.

Sin embargo la labor que se me reconoce no habría sido posible sin la colaboración y ayuda de muchísimas personas que de alguna manera ayudan a que esta labor de compartir conocimientos sea posible, quisiera listarlos a todos pero no puedo, en todo caso sino están en la lista créanme que de igual forma les estoy enormemente agradecido:

  • Core group BogotaDotNet, mis compañeros de equipo
  • Cesar de la Fundacion Universitaria Cafam, quien de manera 100% desinteresada nos ha colaborado cediendo un espacio cómodo muy adecuado para nuestras conferencias y algunos cursos.
  • Ivonne y William de Tecnoparque, quienes han abierto un canal a través del cual hemos participado en conferencias y otros proyectos.
  • Maribel y Alex de IT Talent, gracias a su compromiso con la educación y con las labores sociales nos han permitido hacer uso de sus aulas de manera gratuita, lo cual nos ha llevado a ayudar más personas y crecer como comunidad. Gracias a ellos BogotaDotNet puede dar los cursos que da.
  • Walter de Microsoft y el equipo actual y pasado de DPE, con quienes de manera conjunta hemos realizado varias actividades, como los WorkShops de {activa} y demás.
  • Personal Campus Party ( Colombianos, mexicanos y alemanes ), por brindarme el espacio para realizar conferencias en el Campus del año pasado, y por las posibilidades que como individuo y como comunidad nos tienen para este año.
  • Leandro Tuttini y el equipo de moderadores de los foros de msdn, porque gracias a ellos una tarea tan dura como la moderación esta siendo muy productiva y valiosa.
  • Natalia y Jorge de Sketch Inc, quienes han abierto un espacio idóneo para intercambiar información y generar contenidos de gran calidad para la comunidad de profesionales y usuarios de tecnologías Microsoft: El Community Madia Center.
  • IT Pros DC por inspirarme a participar en comunidades, y porque fue allí dónde aprendí a ser speaker y me abrieron espacio para dar conferencias cuando era un completo newbie.
  • Willy Marroquin por inspirarme a trabajar por una pasión y no por ni para un titulo.
  • A los lectores de mis artículos en mi blog

Y desde luego hago una mención muy especial a mi Familia quienes han tenido que aguantar y ceder un poco de su tiempo en mis sesiones de intenso trabajo, esto no habría sido posible sin su apoyo y tolerancia. No sere cursi, este reconocimiento es mio, fruto de mi esfuerzo, pero ninguno de esos esfuerzos habria sido posible sin sus cuidados, afectos colaboración y haladas de orejas cuando debieron hacerlo.

 Bien eso es todo.

 *Al respecto de qué es necesario para ser reconocido como MVP pueden visitar estos artículos en el blog de Fernando Garcia Loera. MVP Lead para América Latina: