Hace unos dias, Luis Molina me informo del nuevo lanzamiento de su generador de codigo, totalmente renovado y con mas energia que nunca, ademas se rebautiza, su nuevo nombre es ..... MyWay.
MyWay es un generador realizado en C#, capaz de facilitar tu tarea dandote el trabajo de toda una mañana o incluso dias, en segundos, no solo para proyectos en C# si no que tambien Visual Basic .NET, e incluso la posibilidad de crear tus propias plantillas para asi trabajan en otros lenguajes de programacion. Tambien existen distintas posibilidad de conexión a varias Bases de Datos.
Aquí os dejo un webcast en el que podéis ver algunas de la características de este excelente compañero de trabajo:
Podéis descargarlo desde aqui e incluso tenéis un tutorial para entrar pasito a pasito en el mundo de la generación de código.

Como todos sabemos, el CeBIT es la feria de informática mas grande
del viejo continente, pues ni cortos ni perezosos Entornos Innovadores,
mi actual empresa, nos hemos ido para Alemania. Y como es obvio,
nuestro editor Cuadernia ha venido con nosotros.
|
Para quien no este al tanto, Cuadernia, actualmente en su version 1.3 y apunto de salir la 2.0, es la herramienta que la Consejería de Educación y Ciencia de Castilla-La Mancha pone a disposición de toda la comunidad educativa para la creación y difusión de materiales educativos digitales.
Gracias a esta herramienta, se pueden juntar imágenes, videos, actividades..., para conseguir materiales educativos que sirvan a los profesores para su enseñanza diaria.
|

|
Y como es obvio, no solo se va Cuadernia, si no que toda la Pandilla Cuadernia
le sigue en la conquista por las tierras germanas. Esperamos que por
estos lares tenga la misma aceptación esta forma de generar el
conocimiento que en los nuestros. Mucha suerte Pascual !!!
Todos los que querais podéis trabajarla para generar vuestros materiales, ya que es de libre uso, y participar activamente tanto por el foro como por el Facebook.
¿Eres un experto en virtualización de escritorio? Pues estas de enhorabuena, ya que sea ha abierto la beta para poder certificarte bajo Windows Server 2008 R2.
71-669 TS: Windows ® Server 2008 R2, Virtualización de Escritorio
http://www.microsoft.com/learning/en/us/exam.aspx?ID=70-669
El acceso a este examen es limitado, ya que es BETA, y servira para mejorar la experiencia a los proximos certificados. Para ello has de usar tu "MSL SME" en el Connect ( http://connect.microsoft.com/site862 ), crea tu "SME profile",
o bien actualizalo para estar seguro que uno de tus intereses es la
Virtualizacion. El proximo dia 1 de Marzo a las 9 de la costa este de
EE.UU. podras inscribirte y ser participe de este examen.
Dado
que Woxter ha decidido dejar sin actualizaciones a los usuarios que
compramos este disco multimedia, he decidido ponerme manos a la obra y
montarme la actualizacion yo mismo.
1. Descripcion del dispositivo
Primero toca un analisis a nivel hardware para saber que estamos tocando:


Una vez desmontado podemos ver que la placa es una HMR-700 y los controles frontales (IR, LCD, botones, ...)son de un HMR-350, estos discos multimedia acostumbran a ser fabricados por una empresa y venderlo a otras para que lo comercializen, como pueden ser Ellion, O2Media, FanFan, Woxter, .....

Y como procesador tenemos un MIPS, mas concretamente un Realtek Venus
system type : Realtek Venus
processor : 0
cpu model : MIPS 4KEc V6.4
BogoMIPS : 202.34
wait instruction : yes
microsecond timers : yes
tlb_entries : 16
extra interrupt vector : yes
hardware watchpoint : yes
ASEs implemented :
VCED exceptions : not available
Bien, sabiendo esto ya nos queda examinar el software que calza, y dado que podemos acceder mediante telnet vemos:
Linux Venus 2.6.12.6-VENUS #8 Wed Nov 26 16:41:32 KST 2008 mips unknown
BusyBox v1.1.3 (2008.09.12-05:32+0000) Built-in shell (ash)
Module Size Used by Not tainted
aes 29552 2
ieee80211_crypt_ccmp 5952 2
ndas_emu 37664 0
ndas_lpx 69152 7 ndas_emu
r8187 104688 0
ieee80211_rtl 107504 1 r8187
ieee80211_crypt 6928 2 ieee80211_crypt_ccmp,ieee80211_rtl
ohci_hcd 24592 0
ehci_hcd 44000 0
Gracias al EMCXT 2.11 podemos descomprimir el firmware y adaptar al que nosotros queremos.
2. Actualizando el firmware
Despues de un dia probando y adaptandolo a las necesidades mas basicas, doy por liberada la version primera release de Gousthex 1.0, con la nueva interfaz, y ademas la posiblidad de arrancar a directamente Samba al iniciar el dispositivo.
Descargar Firmware Mirror
Descargar Samba Mirror
2.1 Como actualizar
- Descomprimir el fichero "Gousthex - Release.zip" en un dispositivo USB directamente de la raiz del dispositivo.
- Insertar la memoria USB en el conector mas cercano a interruptor del Woxter.
- Apagar el Woxter
- Presionando el boton Home (no del mando, si no de la caja) y encender. Tardara unos 10 segundos
- Se iniciara una pantalla verde y amarilla, dejarla que termine, y se reiniciara solo.
- Voila !! Ya tienes la nueva version
2.2 Habilitar Samba
- Descomprimir el fichero "samba.zip" en el disco duro del Woxter, directamente de la raiz del dispositivo.
- Ha de quedar en "UnidadDelWoxter:\\soft\smbd"
- Reiniciar el Disco Duro, y listo !! ya puedes acceder.
Lleva tambien incorporado un servidor web, solo que no se me ocurre que podriamos ponerle, cualquier idea sera bien recibida. Es posible tambien hacerle correr un cliente de torrent, un mldonkey, ....pero eso en futuras versiones.
PD. ¿Quien me regala uno con Windows, o con procesador x86 para trastear con el otro fin de semana?
No me hago responsable de cualquier desperfecto o cualquier error producido por este firmware, es el que tengo en el mio, y espero poder seguir mejorandolo, pero no soy la empresa, no soy el soporte oficial y no obtengo beneficio alguno por esto.
Haskell es un lenguaje puramente funcional de propósito general. Y
aunque no se pretende desarrollar un Core bancario en el, si que puede
servir como medio de entrenamiento mental, o mera iniciativa de ampliar
conocimiento. Para otros puede valer exclusivamente en la superacion de
cierta asignatura de la universidad.
Las características más
interesantes de Haskell incluyen el soporte para tipos de datos y
funciones recursivas, listas, tuplas, guardas y calce de patrones. La
combinación de las mismas pueden resultar en algunas funciones casi
triviales cuya versión en lenguajes imperativos pueden llegar a
resultar extremadamente tediosas de programar.
El trabajar con
Haskell se ha de hacer siempre pensando en un buen editor, ya que el
numero de parentesis que podemos implementar en ciertas operaciones
puede llegar a ser dificil de manejar mentalmente. Por lo tanto, mejor
buscar un Ultraedit, Notepad++ en Windows, o un eMacs, Vim o mc en GNU/Linux.
El compilador a usar es el hugs, en varias versiones, de las cuales vamos a destacar:
- WinHugs para entornos WIn32 (descargar)
- Hugs 98 para GNU/Linux (descargar o apt-get install hugs)
Y para que todo se mas afable (dentro de lo que Haskell permite) para configurar el editor lo haremos con:
:set +E<nombreDelEditor>
Como por ejemplo :
:set +Emcedit
:set +Eemacs
:set +Evim
Para mas comandos relativos al compilador :
:load <filenames> load modules from specified files
:load clear all files except prelude
:also <filenames> read additional modules
:reload repeat last load command
:edit <filename> edit file
:edit edit last module
:module <module> set module for evaluating expressions
<expr> evaluate expression
:type <expr> print type of expression
:? display this list of commands
:set <options> set command line options
:set help on command line options
:names [pat] list names currently in scope
:info <names> describe named objects
:browse <modules> browse names exported by <modules>
:main <aruments> run the main function with the given arguments
:find <name> edit module containing definition of name
:cd dir change directory
:gc force garbage collection
:version print Hugs version
:quit exit Hugs interpreter
Todos recordamos el mítico caso Eolas, por el cual los desarrolladores tuvimos que cambiar el modo de empotrar un objeto flash en las paginas web, y que muchos usuarios padecieron el echo de tener que dar un click para que se reprodujese un flash. Mas el acuerdo amistoso de xxxxxxxxxx dolares con Microsoft (¿me falta alguna x?).
Pues bien, este despacho de abogados (aunque se autodenominen con otros terminos) al parecer dicen poseer la patente de AJAX, USP 7,599,985, la cual describe un sistema abstracto que funciona de un modo similar a básicamente cualquier aplicación Ajax.
Como es obvio para ellos se han puesto a demandar a diestro y sinientro: dobe Systems, Amazon, Apple,
Blockbuster, Citigroup, eBay, Frito-Lay, Go Daddy, Google, J.C. Penney,
JPMorgan Chase, Office Depot, Perot Systems, Playboy Enterprises,
Staples, Texas Instruments, Yahoo, YouTube y también a Sun
Microsystems. Veremos a ver que nos depara esta nueva maniobra de estos "amigos".

Una nueva campaña del estado en
colaboracion con UCLM IEEEsb, Tractis, Jazztel, ... regalamos 300.000
lectores de DNI, solo teneis que pagar 2 euros por gastos de envio.
Se van a repartir varios modelos:
Para realizar el pedido hacer click aqui.

Me llega por Luis Molina, la apertura de un nuevo programa, WebsiteSpark , para las Pymes que por solo 100$ obtendras licencias con una duracion de tres años para los siguientes productos:
- 3 licenses of Visual Studio 2008 Professional Edition
- 1 license of Expression Studio 3 (which includes Expression Blend, Sketchflow, and Web)
- 2 licenses of Expression Web 3
- 4 processor licenses of Windows Web Server 2008 R2
- 4 processor licenses of SQL Server 2008 Web Edition
- DotNetPanel control panel (enabling easy remote/hosted management of your servers)
Tambien de forma gratuita se puede acceder a:
- Windows Web Server
- SQL Server Web Edition
Mas informacion :
http://www.microsoft.com/web/websitespark/ShowItem.aspx?LocalizedItemId=7180
Os dejo un interesante video de como crear una imagen de WIndows Embedded 6.0 que nos brinda el blog de Mike Hall
Windows Embedded CE 6.0 Image Creation
Llevaba tiempo oyendo acerca de la simplicidad de las WiiMoteLib, pero dado que no habia pasado la Wii por mis manos no habia podido tocarlas, por fin tengo el WiiMote en casa, y como es obvio habia que empezar a trastear. Este es un codigo simple de como conectar y hacer unas lecturas del acelerometro, ideal para adentrarse en el manejo de este dispositivo.
Primero conectamos con cualquier programa gestor de dispositivos bluetooth, al WiiMote presionado los botones 1 y 2 a la vez, y lo conectamos como raton, interfaz humana, HID, ... o como tu gestor lo denomine.
Ahora toca agregar como referencia a nuestro proyecto la libreria WiimoteLib.dll y empezamos a picar codigo, se declaran variables globales en la clase que estamos programando:
private Wiimote mWiimote;
WiimoteCollection mWC;
private delegate void UpdateWiimoteStateDelegate(WiimoteChangedEventArgs args);
Una vez declarados los objetos con los que trabajaremos declaramos las funciones encargadas de la gestion:
private void ManejaWiiMote()
{
int index = 1;
mWC = new WiimoteCollection();
try
{
//Buscamos todos los WiiMotes existentes
mWC.FindAllWiimotes();
}
catch (Exception ex)
{
//Aplicamos nuestro protocolo de errores (por ejemplo log4net)
}
//Se tratan todos los WiiMote
foreach (Wiimote wm in mWC)
{
// Conectamos con el WiiMote
wm.WiimoteChanged += wm_WiimoteChanged;
wm.Connect();
if (wm.WiimoteState.ExtensionType != ExtensionType.BalanceBoard)
wm.SetReportType(InputReport.IRExtensionAccel, IRSensitivity.Maximum, true);
//Asignamos el numero de led a encender en WiiMote
wm.SetLEDs(index++);
}
}
void wm_WiimoteChanged(object sender, WiimoteChangedEventArgs e)
{
UpdateState(e);
}
public void UpdateState(WiimoteChangedEventArgs args)
{
WiimoteState ws = args.WiimoteState;
//Con el mando como si jugaras al MarioKart
//Y = -0,9 Izquierda -0,0 | 0 | 0,1 Derecha 0,9
//Z = -0,9 Decelera -0,0 | 0 | 0,1 Acelera 0,9
if (ws.AccelState.Values.Y > 0.5)
{
//Has girado el mando a la derecha, puedes llamar las funciones pertinentes a esta accion.
}
if (ws.AccelState.Values.Y < -0.5)
{
//Has girado el mando a la izquierda, puedes llamar las funciones pertinentes a esta accion.
}
if (ws.AccelState.Values.Z > 0.5)
{
//Has girado el mando hacia delante, puedes llamar las funciones pertinentes a esta accion.
}
if (ws.AccelState.Values.Z < -0.5)
{
//Has girado el mando hacia atras, puedes llamar las funciones pertinentes a esta accion.
}
}
Desde aqui podeis seguir trabajando con el resto de la informacion que proporciona estas librerias.
Despues de mi último libro escrito, vuelvo a la carga con un nuevo exito que todo iniciado en la administración de sistemas deberia tener (que no es por que sea mio, ;) ). Este libro está dirigido tanto a usuarios con experiencia de trabajo con entornos de servidores, como a los que desean iniciarse en el campo de la administración de sistemas gestionando diversos tipos de servicios.
Los capítulos han sido estructurados para facilitar el estudio y en base a los pasos necesarios que se acostumbran a dar en el montaje de todos los servicios a una empresa desde su inicio. Espero que os guste, por cierto, prometo una cerveza a todo aquel que me demuestre su compra !! que está baratito !!

Introducción
Cómo usar este libro
1.Introducción a Windows Server 2008
1.1. ¿Qué es un servidor?
1.2. Versiones de Windows 2008
1.3. Requisitos del sistema
1.4. Novedades Generales
2.Active Directory
2.1. Compactando tu empresa
2.2. El DCPromo y tú
2.3. Políticas de seguridad
2.4. Configuracion de usuarios
2.5. Cambiar el ámbito de un grupo
2.6. Configurando DNS
3.Arquitectura de IIS7
3.1. Nueva administración
3.2. Creación de una aplicación Web .NET
3.3. Configuración IIS
3.4. Configuración ASP.NET
4.Comandos Windows Server 2008: PowerShell
4.1. ¿Por qué la PowerShell?
4.2. Introducción a PowerShell
4.2.1. Conceptos
4.3. Comandos
4.3.1. Alias
4.4. Funciones
4.5. Tuberías (Pipelines)
4.6. Scripts (secuencias de comandos)
4.6.1. Comparadores
4.7. Políticas de ejecución
4.7.1. Ejemplos de secuencias de comandos
4.8. Otros lenguajes y PowerShell
4.9. Novedades PowerShell 2.0
4.9.1. Nuevos Operadores
4.9.2. Nuevas variables
4.9.3. Nuevos Cmdlets
5.Instalación de Windows Server 2008
5.1. Características de la instalación de Windows Server 2008
5.2. Instalación
5.3. Primeros Pasos
5.4. Configuración básica
5.4.1. Configuración del Firewall
5.4.2. Actualización automática
5.4.3. Otros comandos útiles
5.4.4. Gestión remota de Server Core
5.5. Configuración de un dominio
5.5.1. Configuración de los clientes
5.5.2. Configuración del servidor
5.6. Instalación de aplicaciones.
5.6.1. OCList
5.6.2. OCSetup
5.7. Nuevo hardware
6.Seguridad de los servidores Windows Server 2008
6.1. La importancia de la seguridad
6.2. Asistente de configuración de la seguridad
6.2.1. Configuración de servicio basado en funciones
6.2.2. Seguridad de red
6.2.3. Configuración del Registro
6.2.4. Directiva de auditoria
6.2.5. Guardar directiva de seguridad
6.3. Network Policy Server
6.3.1. Instalación
6.3.2. Configuración NPS
6.3.3. Network Acces Protection
6.3.4. Interoperabilidad
7.Pasarela de Terminal Server (Terminal Server Gateway)
7.1.¿Qué es Terminal Server Gateway?
7.2. ¿Por qué un acceso externo?
7.3. Instalación
7.4. Configuración
7.4.1. Conexiones
7.4.2. HTTPS con TS Gateway
7.4.3. Granja de servidores
7.4.4. Almacén de CAP
7.4.5. Monitorización y registro
7.4.6 Importar y exportar configuración
7.4.7. Conectar
7.5. Licencias
7.5.1. Licencia Windows Server
7.5.2. Licencia de Acceso de Cliente de Windows Server
7.5.3. CAL de Terminal Services por Equipo o Usuario
7.5.4. Modalidades de Licencias de Acceso de Cliente de Terminal Services
8.Clúster de servidores tolerante a fallos (Failover clustering)
8.1. Cuando caen los servidores…
8.2. Requisitos
8.3. Instalación
8.4. Administración
8.4.1. Validar configuración
8.4.2. Agregar Nodos nuevos
8.4.3. Agregar Servicios
8.5. Modelos de Despliegue (Quorum)
8.5.1. ¿Qué es el quórum?
8.5.2. Configuración del quórum
8.6. Copias de seguridad
8.7. Registros e informes
9.Virtualización
9.1. Introducción
9.2. Emulación, Virtualización y Paravirtualización
9.2.1. Emulación
9.2.2. Virtualización
9.2.3. Paravirtualización
9.3. Hyper-V
9.3.1. El hypervisor
9.3.2. Discos VHD
9.4. Instalación de Hyper-V
9.5. Creación de una máquina virtual
9.6. Configuración de una máquina virtual
9.7. Virtual Server
9.7.1. Virtual Machine Additions
9.7.2. Virtual Machine Additions para Linux
9.7.3. VMRC Plus
9.8. SoftGrid
9.9. La competencia
9.9.1. Wine
9.9.2. PearPC
9.9.3. Bochs
9.9.4. Qemu
9.9.5. KVM
9.9.6. VirtualBox
9.9.7. VMWare
9.9.8. Xen
9.10. Microsoft Hyper-V Server 2008
10. Monitorización
10.1.¿Por qué monitorizar?
10.2. Monitor de confiabilidad y rendimiento
10.2.1. Supervisión de actividades
10.2.2. Monitor de confiabilidad
10.2.3. Monitor de rendimiento
10.2.4. Recopilación de datos
10.2.5. Informes de diagnóstico fáciles de usar
10.3. Sysinternals Suite
10.3.1. Monitor de procesos
10.3.2. BgInfo
10.4. Monitor de red
10.4.1. Estadísticas con AWStats
11. Copias de seguridad
11.1. Dispositivos
11.1.1. Cinta magnética
11.1.2. RAID
11.1.3. NAS
11.1.4. SAN
11.2. Política de copias de seguridad
11.3. Copias de seguridad de Windows
11.3.1. Instalación y configuración
11.3.2. Copia de seguridad programada
11.3.3. Copia de seguridad inmediata
11.3.4. Recuperación
11.3.5. Administración en línea de comandos
12. Interoperabilidad con Unix
12.1. Interoperabilidad
12.1.1. SUA
12.2. Instalación
12.2.1. Subsistema de aplicaciones UNIX
12.2.2. Utilidades y SDK para aplicaciones basadas en Unix
12.3. Primeros comandos
12.4. SUA Community
Índice alfabético
Mas informacion en:
http://www.anayamultimedia.es/cgi-bin/monta_ficha.pl?obrcod=2066711&codigo_comercial=2335514&id_sello_editorial_web=23
Hamid Shojaee nos presenta un video para aprender Scrum en solo diez minutos:
Mas que un articulo tecnico, quiero comentaros una reflexion. Os
voy a presentar el efecto real de una caida de un portal por unos dias.
En la era técnologica, tenemos una gran capacidad de
adaptarnos a los cambios, sobre todo si se cae nuestro portal favorito
para poder seguir informados. Obviamente, una desconexion de varios
dias (aunque pongas un video de David Cervigon), supone un perdida considerable de visitas, tal y como indica la grafica de Google Analitycs que se muestra a continuacion.
(Grafica de visitas de www.labloguera.net )
Pero
sin duda, lo mas destacable no es la caida de visitas, algo obvio, si
no la lenta recuperacion de las mismas, ha llegado a caer hasta
un tercio
la media, con esto solo quiero decir, que antes de decidir dejar sin
servicio, aunque sea unos pocos dias, cualquier portal no se piense
como el adicto que somos, si no como el usuario que esta empezando a
engancharse, y al encontrase un 404 varios dias, no llega ni a
introducirlo en su seccion de favoritos.
La primera vez que lo comento mi compañero de trabajo todos nos
lanzamos a reir pensado que algo habria liao para llegar a ese punto.
Pero como muchas cosas, hasta que no te pasa a ti no lo tomas en serio. Para solventarlo solo se han de seguir los siguientes pasos:
1. Abrir el Editor de registro. (Inicio > Ejecutar ... y escribir "regedit")
2. Dentro del Editor de registro navegar hasta HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Word\Data
3. Relizar clic con el boton secundario de raton en la carpeta "Data" y borrarla
4. Abrimos el Word y solucionado el problema.
Para mas informacion de problemas relacionados con office pasar por este
enlace.

Hoy me he encontrado con la grata sopresa, por fin SJJ ha sacado la actualizacion del sus EDK con una gran novedad ....... Soporte ethernet !!!
para ello tendremos que actualizar la imagen que lleva interna. Muy
bien preparado nos presenta un fichero llamado "EDK_Firmware Update.pdf" en el propio fichero la actualizacion.
Descargar
Para tener un MAC se ha de enviar un mail a support@sjjmicro.com
con el numero de serie que esta escrito en la parte inferior de la
placa, en pocas horas te enviaran el paquete de actualizacion con tu
MAC personalizada.

Aqui os dejo con todo lo que se puede jugar:
2 RS-232 serial ports |
COM1 only for Development |
Internal Real time clock/calendar (no battery backup) |
Supported |
16 processor GPIO lines |
Supported |
16 PLD output lines - 8 lines are for high drive output lines |
Supported |
16 PLD 5 volt tolerant input lines |
Supported |
SPI/I2S |
SPI-only |
Green status LED |
Supported |
Internal flash data storage |
Supported |
Battery backed RTC |
N/A |
1 + 2 PWM I/O lines |
Available in v2.5 Update |
5 channels of 12 bit A/D (0 to 3.3V) |
Available in v2.5 Update |
1 10/100 BaseT Ethernet port |
Available in V2.5_Eth Update |
MMC/SD hot-swap socket |
Support available from DotVision.com |
2 USB 2.0 host ports |
|
Aunque parezca molesto el tener que introducir una licencia, Microsoft se
ha vuelvo algo mas permisivo ultimamente. Como todos sabemos se permite la
instalacion del Sistema Operativo completamente funcional sin tener el numero de
licencia a mano, dejandonos un periodo de 30/60 dias para introducirlo.
Siempre puede darnos el caso que por excesiva carga de trabajo, o para
maquinas virtuales, no podamos o no nos interese introducir una licencia y
simplemente evaluarlo durante un tiempo limitado. Por lo que la permisividad ha
sido mayor dandonos la posibilidad de ampliar este periodo con un comando para
gestionar las licencias.
En linea de comando podremos ver la cantidad de dias que nos quedan para
que cumpla la licencia lanzando desde linea de comando:
slmgr.vbs -dli
Si queremos ampliar este perido simplemente debemos de lanzar el
comando:
slmgr.vbs -rearm
Con esto conseguiremo un perido extra para poder ir a comprar el producto o
bien rescatar los datos que dejar en ese sistema.
Tambien es factible automatizar este proceso, simplemente
teneis que seguir las instrucciones de la knowledge database.
Ya podemos descargar para empezar a realizar las primeras pruebas de desarrollo con el nuevo MicroFramework, que cada vez mas le vamos a tener que cambiar el nombre de micro a macro, por la cantidad de implementaciones que esta teniendo, :) . Las principales novedades son:
- Interop con codigo nativo.
- Touch Screen.
- Inking.
- Soporte para USB.
- Sistema de ficheros.
Para descargarlo primero tendreis que registraros en http://connect.microsoft.com/netmf y contestar a una pequeña encuesta. Asi entrareis a la comunidad de desarrolladores y poder participar activamente en este testeo.
Uno de los grandes problemas que tenemos en lo referente a seguridad web,
son los temido ataques
"cross-site scripting". Algo que navegadores como
IE (Internet Explorer) solventa con la negacion por defecto de acceso a scripts
que estan hospedados en dominios distintos a los de nuestras aplicacion. Algo
que otros navegadores no han optado por llevarlo desde un inicio.
Esto nos lleva a que si tenemos que empotrar nuestro desarrollo dentro de
un iframe de terceros, hospedados ambos en servidores distintos nuestra
aplicacion funcionara perfectamete en Firefox, Safari, ..... pero no en IE,
dandonos el error de "Access is denied" a ese script.
La solucion es bastante mas sencilla de lo que hayamos podidos leer en
otros sitios (1
y 2),
simplemente tendremos que agregar a nuestra pagina o master page (dependiendo de
donde nos convenga) el siguiente script:
<script type=
"text/javascript">
if (Sys.Browser.agent == Sys.Browser.InternetExplorer){
Sys.UI.DomElement.getLocation=function(a){
if(a.self||a.nodeType===9)
return new Sys.UI.Point(0,0);
var b=a.getBoundingClientRect();
if(!b)
return new Sys.UI.Point(0,0);
var c=a.document.documentElement,d=b.left-2+c.scrollLeft,e=b.top-2+c.scrollTop;
try{
var g=a.ownerDocument.parentWindow.frameElement||null;
if(g){
var f=2-(g.frameBorder||1)*2;
d+=f;e+=f
}
}catch(h){}
return new Sys.UI.Point(d,e)}};
</script>
Espero que os sea util, y no os saque de vuestras casillas las distintas
politicas e interpretaciones de cada navegador.
Para que podamos genera documentos PDF con la facilidad que nos da
C# tanto para nuestras aplicaciones de escritorio como para las Web.Con
caracteristicas tan interesantes como:
- Crear documentos PDF en tiempo de ejecucion con .NET
- Facil compresion del modelo de objetos para la composicion de documentos
- Posibilidad de dibujar en un pagina PDF, una ventana o una impresora
- Modificar, fusionar o dividir fichero PDF
- Imágenes con transparencia (máscara de color, monocromo máscara, la máscara alfa)
- Nueva concepción, partiendo de cero y escrito enteramente en C #
- Compatibilidad con las clases graficar de .NET
- Incluye MigraDoc Lite de alto nivel con capas de texto (se puede usar tanto PDFsharp y MigraDoc Lite en un solo documento)
Y gran cantidad de ejemplos desde aqui.Como este "Hello World":
// Create a new PDF document
PdfDocument document = new PdfDocument();
// Create an empty page
PdfPage page = document.AddPage();
// Get an XGraphics object for drawing
XGraphics gfx = XGraphics.FromPdfPage(page);
// Create a font
XFont font = new XFont("Verdana", 20, XFontStyle.Bold);
// Draw the text
gfx.DrawString("Hello, World!", font, XBrushes.Black,
new XRect(0, 0, page.Width, page.Height),
XStringFormat.Center);
// Save the document...
string filename = "HelloWorld.pdf";
document.Save(filename);
// ...and start a viewer.
Process.Start(filename);
Desde aqui lo podeis
descargar.
Aunque todos virtualizamos, siempre oigo las mismas quejas sobre la
interfaz de administracion de Virtual Server R2, dado que la interfaz
administrativa es via web perdemos algo de la velocidad que tenemos con
los clicks en las aplicaciones de escritorio (bien sea real o bien nos
da la sensacion).
Pues bien, tenemos una alternativa poco conocida, incluso con esta herramienta podremos instalar algunas Additions.
Descargar
Más artículos
Página siguiente >