{"id":277,"date":"2008-07-26T23:41:02","date_gmt":"2008-07-27T05:41:02","guid":{"rendered":"http:\/\/www.lastdragon.net\/?p=277"},"modified":"2008-07-26T23:56:04","modified_gmt":"2008-07-27T05:56:04","slug":"pendiente-7","status":"publish","type":"post","link":"https:\/\/www.lastdragon.net\/?p=277","title":{"rendered":"Applets de .NET usando C#"},"content":{"rendered":"<p><object id=\"IEcontrol\" height=\"620\" width=\"500\" classid=\"https:\/\/www.lastdragon.net\/misarchivos\/applets\/appletnet\/IEControl.dll#IEControl.UserControl1\"><\/object><\/p>\n<p>Ese TextBox y el Boton \u201cSaludar\u201d, Si lo puedes ver, es porque se esta ejecutando un Applet .NET en tu computadora, si no lo puedes ver, es por que no tienes instalado el FrameWork .NET de preferencia el 2.0<\/p>\n<p>Hoy despues de un tortuoso camino, encontr\u00e9 como hacer Applets de .NET, y es que aunque leia la documentaci\u00f3n y hacia las cosas al pie de la letra, simplemente no funcionaba.<\/p>\n<p>A punto estaba de tirar la toalla, cuando sorpresa, por fin funciona. La soluci\u00f3n es muy simple, ejecuta los archivos despu\u00e9s de descargarlos de internet, nunca en el disco duro local.<\/p>\n<p>\u00bfPor qu\u00e9?, No tengo la menor idea, pero si se intenta ejecutar un applet en Windows Vista desde el disco duro local, simplemente no funcionara, funciona solo despu\u00e9s de subir los DLL al servidor y ejecutarlo entonces desde la URL.<\/p>\n<p>Porque tanto alboroto.<\/p>\n<p>Bueno hoy simplemente pens\u00e9, .NET siendo como Java deber\u00eda tener un modo de Applet para incrustar aplicaciones pre compiladas en el WEB, aplicaciones que luego ser\u00eda ejecutadas en la pc que visite la WEB<\/p>\n<p>El c\u00f3digo que hace esto posible, es muy simple, de hecho es pr\u00e1cticamente una aplicaci\u00f3n Windows Form, solo que en lugar de ser un EXE, se espera que sea una biblioteca de clases o DLL para Windows<\/p>\n<p>El c\u00f3digo del DLL es:<\/p>\n<p>using System;<br \/>\nusing System.Collections.Generic;<br \/>\nusing System.ComponentModel;<br \/>\nusing System.Drawing;<br \/>\nusing System.Windows.Forms;<\/p>\n<p>namespace IEControl<br \/>\n{<\/p>\n<p>&nbsp;&nbsp; &nbsp;public class UserControl1 : UserControl<br \/>\n&nbsp;&nbsp; &nbsp;{<\/p>\n<p>protected override void Dispose(bool disposing)<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;{<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if (disposing)<br \/>\n{<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;if (components != null) {<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;&nbsp;&nbsp; &nbsp;components.Dispose();<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;}<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;}<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;base.Dispose(disposing);<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;}<\/p>\n<p>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;private void InitializeComponent()<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;{<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;this.button1 =<br \/>\nnew System.Windows.Forms.Button();<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;this.label1 =<br \/>\nnew System.Windows.Forms.Label();<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;this.intro =<br \/>\nnew System.Windows.Forms.TextBox();<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;this.saludo =<br \/>\nnew System.Windows.Forms.Label();<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.SuspendLayout();<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;\/\/ <br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;\/\/ button1<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;\/\/ <br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.button1.Location = new System.Drawing.Point(24, 71);<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.button1.Name = &#8220;button1&#8221;;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.button1.Size = new System.Drawing.Size(171, 35);<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.button1.TabIndex = 0;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.button1.Text = &#8220;Saludar&#8221;;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.button1.UseVisualStyleBackColor = true;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.button1.Click += new System.EventHandler(this.Button1Click);<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;\/\/ <br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;\/\/ label1<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;\/\/ <br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.label1.Location = new System.Drawing.Point(24, 11);<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.label1.Name = &#8220;label1&#8221;;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.label1.Size = new System.Drawing.Size(171, 19);<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.label1.TabIndex = 1;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.label1.Text = &#8220;Nombre&#8221;;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;\/\/ <br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;\/\/ intro<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;\/\/ <br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.intro.Location = new System.Drawing.Point(27, 39);<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.intro.Name = &#8220;intro&#8221;;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.intro.Size = new System.Drawing.Size(167, 20);<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.intro.TabIndex = 2;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;\/\/ <br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;\/\/ saludo<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;\/\/ <br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.saludo.Location = new System.Drawing.Point(24, 126);<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.saludo.Name = &#8220;saludo&#8221;;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.saludo.Size = new System.Drawing.Size(169, 30);<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.saludo.TabIndex = 3;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.saludo.Text = &#8220;Saludos &#8212; &#8220;;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;\/\/ <br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;\/\/ UserControl1<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;\/\/ <br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.Controls.Add(this.saludo);<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.Controls.Add(this.intro);<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.Controls.Add(this.label1);<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.Controls.Add(this.button1);<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;this.Name =<br \/>\n&#8220;UserControl1&#8221;;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;this.Size =<br \/>\nnew System.Drawing.Size(231, 186);<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.ResumeLayout(false);<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;this.PerformLayout();<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;}<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;private<br \/>\nSystem.Windows.Forms.Label saludo;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;private<br \/>\nSystem.Windows.Forms.TextBox intro;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;private<br \/>\nSystem.Windows.Forms.Label label1;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;private<br \/>\nSystem.Windows.Forms.Button button1;<br \/>\n&nbsp;&nbsp; &nbsp;}<\/p>\n<p>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;public UserControl1()<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;{<br \/>\n&nbsp;&nbsp; &nbsp;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;InitializeComponent();<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;}<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;void Button1Click(object sender,<br \/>\nEventArgs e)<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;{<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;saludo.Text =<br \/>\n&#8220;Saludos: &#8221; + intro.Text;<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br \/>\n&nbsp;MessageBox.Show (&#8220;Click en el boton&#8221;,&#8221;Last Dragon&#8221;);<br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;}<br \/>\n&nbsp;&nbsp; &nbsp;}<br \/>\n}<\/p>\n<p>Y el Html que lo lanza como Applet es:<\/p>\n<p>&lt;object id=&#8221;IEcontrol&#8221; height=&#8221;620&#8243; width=&#8221;500&#8243;<br \/>\nclassid=&#8221;https:\/\/www.lastdragon.net\/misarchivos\/applets\/appletnet\/IEControl.dll#IEControl.UserControl1&#8243;&gt;<br \/>\n&lt;\/object&gt;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ese TextBox y el Boton \u201cSaludar\u201d, Si lo puedes ver, es porque se esta ejecutando un Applet .NET en tu computadora, si no lo puedes ver, es por que no tienes instalado el FrameWork .NET de preferencia el 2.0 Hoy despues de un tortuoso camino, encontr\u00e9 como hacer Applets de .NET, y es que aunque&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-277","post","type-post","status-publish","format-standard","hentry","category-programacion"],"_links":{"self":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/posts\/277","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=277"}],"version-history":[{"count":0,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/posts\/277\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=277"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=277"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=277"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}