SlideShare una empresa de Scribd logo
1 de 47
Vive Windows : Vive Vista!! Reglas de Oro para el desarrollo con Windows Vista Julio Casal Consultor en TI http://juliocasal.com
Creandoimpresiones Sólidocomounaroca Reglaspara el diseño de UX Agenda
CreandoImpresiones DesarrollandoMejoresExperencias de Usuario
¿Qué es WPF?
Una Plataforma para impulsar la mejor experiencia API Xaml Net 3.0
Compilación y ejecución Compilar, analizar y desplegar 0101010 0101010 BAML Analizar Cargar, desplegar Button b1 = new Button(); b1.Content = "OK"; b1.Background = new SolidColorBrush(Colors.LightBlue); b1.Width = 100; <Button Width="100"> OK   <Button.Background>     LightBlue   </Button.Background> </Button> ¿XAML o código?
Flexibilidad y Funcionabilidad en acción vb , c# XAML  <Button Margin="77,0,84,60" x:Name="button1" Height="45" Click=“button1_Click”> Viva Windows</Button> private void button1_Click(object sender, RoutedEventArgs e)         { 	button1.content=“Probemos XAML”         }
CreandoImpresiones El Poder de XAML + WPF DEMO
Poder Gráfico de Windows Vista Aero Glass vb , c# dwmapi.dll GlassHelper.ExtendGlassFrame(this, new Thickness(a,b,c,d)); API  [DllImport("dwmapi.dll", PreserveSig = false)]
                                                             Con DWM, y la composición de escritorio  Una representación lenta causa seccionamiento (Hacer clic en la imagen para ampliarla)
Los 4 áreas funcionales principales y  públicas en la API de DWM Configuración básica de composición de escritorio  Representación del efecto de cristal en una ventana de cliente  Representación de vistas en miniatura  Ajuste de la representación para la interacción con programas multimedia
Las funciones de composición de WDM ,[object Object]
DwmIsCompositionEnabled 
DwmSetWindowAttribute
DwmGetWindowAttribute
DwmGetColorizationColor 
DwmDefWindowProc
DwmExtendFrameIntoClientArea  
DwmEnableBlurBehindWindow
DwmQueryThumbnailSourceSize
DwmRegisterThumbnail 
DwmUnregisterThumbnai
DwmUpdateThumbnailProperties  ,[object Object]
Utilizando las funciones DWM DwmExtendFrameIntoClientArea(Formulario ,  Margenes) m_glassMargins = new DwmApi.MARGINS(-1, 0, 0, 0); if (DwmApi.DwmIsCompositionEnabled())  { DwmApi.DwmExtendFrameIntoClientArea(this.Handle, m_glassMargins); 	} this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.SizableToolWindow; DwmRegisterThumbnail (Formulario Destino , Formulario Origen)  // Registrar la funcion con el formulariodestinodondenosotrosqueremosmostrar y renderizar el thumbnail con el formulario padre m_hThumbnail = DwmApi.DwmRegisterThumbnail(this.Handle, sourceWindow); Ahora actualizamos el thumbnail para que pueda ser mostrado con sus propiedades DwmApi.DwmUpdateThumbnailProperties(m_hThumbnail,  m_ThumbnailProperties); this.Show();
CreandoImpresiones DWM y la Composición de Escritorio DEMO
SolidocomoUna Roca DesarrollandoApicacionesMasseguras, Masconfiables, AltamenteAdministrables
Ingenieria de ExcelenciaEl Proceso de Desarrollo en Windows Vista Entrenamiento periódico de seguridad - obligatorio Asesores de seguridad para todas las componentes Modelamiento de amenazas es parte de la fase de diseño  Mediciones de seguridad, revisiones y testing Certificación Common Criteria
En Windows Vista, Microsoft ® Internet Explorer 7 (IE7) se ejecuta en lo que se denomina modo protegido Reduce la gravedad de las amenazas a IE 7 y sus extensiones mediante la eliminación de la instalación silenciosa de código malicioso a través de las vulnerabilidades de software.  ModoProtegido de Internet Explorer 7
Basado en las nuevas caracteristicas de seguridad de Windows Vista Control de Cuentas de Usuario (User Access Control - UAC) Mecanismo de Control de Integridad (Mechanism Integrity Control  - MIC) Privilegios de Aislamiento de la Interfaz de Usuario (User Interface PrivilegeIsolation- UIPI) IE7: Integracion con Windows Vista
Quees lo que un desarrolladordebe saber: Determinarsi IE7 estacorriendo en modoprotegidoIEIsProtectedModeProcess Obtener los archivostemporales de IE de bajaprioridadque se puedaneditarIEGetWriteableFolderPathIEGetWriteableHKCU Guardarlosarchivostemporales de IE IEShowSaveFileDialog, IESaveFile, IECancelSaveFile IE7 ModoProtegidoparaDesarrolladores
Cryptography New Generation API (CNG) Common Criterial Evaluate Asurance Level 4 Federal Information Processing Standards (FIPS) 140-2 level 2  Cryptography agility (criptografiaagnostica) Soporte de Modo Kernel Seguridad en EntornosMultiHilos Criptografia
Suite B   Anunciada por la Agencia de Seguridad Nacional (NSA)     de los Estados Unidos    Certificación Suite B en implementaciones    Protección de la información designada como Top Secret, Secret, Sensitive-But-Unclassified.  Soporte CNG:  AES (todos los tamaños),   SHA-2 (SHA-256, SHA-384 y SHA-512)  Curva Eliptica de Diffie-Hellman ECDH,   Curva elíptica DSA (ECDSA ) a lo largo de la   NIST-prime curvas de nivel P-256, P-384 y P-521.  CNG: SoporteSuite B
Lo que un desarrollador.Netdebe saber: UtilizarBCRYPT_HANDLE  Utilizarproveedores de AlgoritmosBCryptOpenAlgorithmProvider Generacion de numerosaleatoriosBCryptGenRandom Manejo de hash BCryptCreateHash CifradosimetricoBCryptGenerateSymmetricKey CifradoAsimetricoBCryptGenerateKeyPair ManejardatoscifradosBCryptDestroyKey, BCryptEncrypty BCryptDecrypt CNG: Para desarrolladores
Transacciones en lasoperaciones de IO Preservaintegridad de los datosdentro del disco Permiteejecutar commit o Rollback sobreoperaciones en un grupo de archivos Transacciones NTFS (TxF)
Se puedehabilitar el Uso de TxFpara: Actualizacion de un archivo Actualizacion de un grupo de archivos Consistencia en ActualizacionesConcurrentes Coordinar con otroAdministrador de Transacciones (DTC) No usarTxFpara: No utilice TxF para sustituir a una base de datos; TxF no es una base de datos.  No utilice TxF cuando su aplicación debe tener varios clientes actualizar un archivo al mismo tiempo TxFno es apropiado para escenarios con múltiples usuarios.  TxFno es apropiado para los escenarios en que un archivo es abierto por un largo período de tiempo TxF: EscenarioUsuales
Puntos claves del modelo de desarrollo con TxF Cerrar el handler antes de un Commit o Rollback Un archivo se consideracomounaunidad de Almacenamiento Memoria mapeada de E / S es transparente y coherente con el archivo normal de I / O.  TxF : Para desarrolladores
SolidocomoUna Roca TransaccionesNTFS (TxF) DEMO
Basado en los principios de Least Priviliges Todousuarioes un usuario Standard Elevacion de privilegiosrequiereconformidad con el usuario Corrige o remuevecheksadministrativos no autorizados User Account Control
El icono de Security Shield         identificalasoperacionequenecestanelevacion de privilegios UAC: Prompting
Lo que un desarrollador  de .Net, debe saber : Cómo integrar un manifiesto en un ejecutable administrado  Cómo poner en marcha un proceso con privilegios elevados Cómo establecer el icono del Security Shield Cómo depurar aplicaciones UAC-aware con Visual Studio UAC paraDesarrolladores
SolidocomoUna Roca User Account Control DEMO
10 Reglas para el Desarrollo de Mejores Soluciones en Vista
Reglas para el diseño de UX
1 Ventanas Estándares y Glass  Glass 600px 800px
2 Controles y ventanas de diálogo comunes
3 Iconos y gráficos consistentes con Windows Vista en estilo y calidad

Más contenido relacionado

La actualidad más candente

Introducción a Visual Basic
Introducción a Visual BasicIntroducción a Visual Basic
Introducción a Visual Basickattybe
 
D andoni perez_de_lema_-_igae_-_optimizacion_de_la_calidad_de_servicio_y_la_e...
D andoni perez_de_lema_-_igae_-_optimizacion_de_la_calidad_de_servicio_y_la_e...D andoni perez_de_lema_-_igae_-_optimizacion_de_la_calidad_de_servicio_y_la_e...
D andoni perez_de_lema_-_igae_-_optimizacion_de_la_calidad_de_servicio_y_la_e...clienteafirma
 
Windows Phone 8 en Campus Party
Windows Phone 8 en Campus PartyWindows Phone 8 en Campus Party
Windows Phone 8 en Campus PartySorey García
 
099 la evolucion-web_esta_lejos_de_terminar
099 la evolucion-web_esta_lejos_de_terminar099 la evolucion-web_esta_lejos_de_terminar
099 la evolucion-web_esta_lejos_de_terminarGeneXus
 
Lanzamiento Visual Studio 2008
Lanzamiento Visual Studio 2008Lanzamiento Visual Studio 2008
Lanzamiento Visual Studio 2008Tonymx
 
Integrando Nuevas Tecnologías Web
Integrando Nuevas Tecnologías WebIntegrando Nuevas Tecnologías Web
Integrando Nuevas Tecnologías Webjuliocasal
 
Cl@ve Firma - Visión práctica desde el punto de vista del proveedor de servicios
Cl@ve Firma - Visión práctica desde el punto de vista del proveedor de serviciosCl@ve Firma - Visión práctica desde el punto de vista del proveedor de servicios
Cl@ve Firma - Visión práctica desde el punto de vista del proveedor de serviciosTomás García-Merás
 
Orquestando Procesos de Negocio de manera ágil con Bonita BPM (v1.0)
Orquestando Procesos de Negocio de manera ágil con Bonita BPM (v1.0)Orquestando Procesos de Negocio de manera ágil con Bonita BPM (v1.0)
Orquestando Procesos de Negocio de manera ágil con Bonita BPM (v1.0)Roger CARHUATOCTO
 
RoadShow-Azure-PartnersMicrosoft-Nov-2010-Caso de éxito de Softeng Portal Bul...
RoadShow-Azure-PartnersMicrosoft-Nov-2010-Caso de éxito de Softeng Portal Bul...RoadShow-Azure-PartnersMicrosoft-Nov-2010-Caso de éxito de Softeng Portal Bul...
RoadShow-Azure-PartnersMicrosoft-Nov-2010-Caso de éxito de Softeng Portal Bul...SOFTENG
 
[Webinar] Creando un "backend" con WSO2
[Webinar] Creando un "backend" con WSO2 [Webinar] Creando un "backend" con WSO2
[Webinar] Creando un "backend" con WSO2 Roger CARHUATOCTO
 
introduccion al desarrollo de aplicaciones android
introduccion al desarrollo de aplicaciones androidintroduccion al desarrollo de aplicaciones android
introduccion al desarrollo de aplicaciones androidJose Luis Bugarin Peche
 

La actualidad más candente (19)

Arquitectura java web
Arquitectura java webArquitectura java web
Arquitectura java web
 
Introducción a Visual Basic
Introducción a Visual BasicIntroducción a Visual Basic
Introducción a Visual Basic
 
D andoni perez_de_lema_-_igae_-_optimizacion_de_la_calidad_de_servicio_y_la_e...
D andoni perez_de_lema_-_igae_-_optimizacion_de_la_calidad_de_servicio_y_la_e...D andoni perez_de_lema_-_igae_-_optimizacion_de_la_calidad_de_servicio_y_la_e...
D andoni perez_de_lema_-_igae_-_optimizacion_de_la_calidad_de_servicio_y_la_e...
 
Com521
Com521Com521
Com521
 
Windows Phone 8 en Campus Party
Windows Phone 8 en Campus PartyWindows Phone 8 en Campus Party
Windows Phone 8 en Campus Party
 
Cruz soriano
Cruz sorianoCruz soriano
Cruz soriano
 
Cruz soriano
Cruz sorianoCruz soriano
Cruz soriano
 
EQUIPO 2,2A PARTE DE LAS AGUILAS
EQUIPO 2,2A PARTE DE LAS AGUILASEQUIPO 2,2A PARTE DE LAS AGUILAS
EQUIPO 2,2A PARTE DE LAS AGUILAS
 
099 la evolucion-web_esta_lejos_de_terminar
099 la evolucion-web_esta_lejos_de_terminar099 la evolucion-web_esta_lejos_de_terminar
099 la evolucion-web_esta_lejos_de_terminar
 
Lanzamiento Visual Studio 2008
Lanzamiento Visual Studio 2008Lanzamiento Visual Studio 2008
Lanzamiento Visual Studio 2008
 
Integrando Nuevas Tecnologías Web
Integrando Nuevas Tecnologías WebIntegrando Nuevas Tecnologías Web
Integrando Nuevas Tecnologías Web
 
Wpf
WpfWpf
Wpf
 
5-Unidad 2: Diseño de Vista-2.2 Para Web
5-Unidad 2: Diseño de Vista-2.2 Para Web5-Unidad 2: Diseño de Vista-2.2 Para Web
5-Unidad 2: Diseño de Vista-2.2 Para Web
 
Cl@ve Firma - Visión práctica desde el punto de vista del proveedor de servicios
Cl@ve Firma - Visión práctica desde el punto de vista del proveedor de serviciosCl@ve Firma - Visión práctica desde el punto de vista del proveedor de servicios
Cl@ve Firma - Visión práctica desde el punto de vista del proveedor de servicios
 
Orquestando Procesos de Negocio de manera ágil con Bonita BPM (v1.0)
Orquestando Procesos de Negocio de manera ágil con Bonita BPM (v1.0)Orquestando Procesos de Negocio de manera ágil con Bonita BPM (v1.0)
Orquestando Procesos de Negocio de manera ágil con Bonita BPM (v1.0)
 
RoadShow-Azure-PartnersMicrosoft-Nov-2010-Caso de éxito de Softeng Portal Bul...
RoadShow-Azure-PartnersMicrosoft-Nov-2010-Caso de éxito de Softeng Portal Bul...RoadShow-Azure-PartnersMicrosoft-Nov-2010-Caso de éxito de Softeng Portal Bul...
RoadShow-Azure-PartnersMicrosoft-Nov-2010-Caso de éxito de Softeng Portal Bul...
 
CodeCamp 2010 | FBI- Fácil Business Intelligence
CodeCamp 2010 | FBI- Fácil Business IntelligenceCodeCamp 2010 | FBI- Fácil Business Intelligence
CodeCamp 2010 | FBI- Fácil Business Intelligence
 
[Webinar] Creando un "backend" con WSO2
[Webinar] Creando un "backend" con WSO2 [Webinar] Creando un "backend" con WSO2
[Webinar] Creando un "backend" con WSO2
 
introduccion al desarrollo de aplicaciones android
introduccion al desarrollo de aplicaciones androidintroduccion al desarrollo de aplicaciones android
introduccion al desarrollo de aplicaciones android
 

Similar a Reglas de Oro para el Desarrollo con Windows Vista

Building Ria Applications With Silverlight 2
Building Ria Applications With Silverlight 2Building Ria Applications With Silverlight 2
Building Ria Applications With Silverlight 2Tonymx
 
PPT SESION 11.pdf
PPT SESION 11.pdfPPT SESION 11.pdf
PPT SESION 11.pdfNinaLagos1
 
Ataque Informatico (Keylogger,screenshot,bavkdoor)
Ataque Informatico (Keylogger,screenshot,bavkdoor) Ataque Informatico (Keylogger,screenshot,bavkdoor)
Ataque Informatico (Keylogger,screenshot,bavkdoor) Municipio de Guayaquil
 
Meetup Madrid 6 Marzo 2024 - MuleSoft en el mundo real: ejemplos de casos de ...
Meetup Madrid 6 Marzo 2024 - MuleSoft en el mundo real: ejemplos de casos de ...Meetup Madrid 6 Marzo 2024 - MuleSoft en el mundo real: ejemplos de casos de ...
Meetup Madrid 6 Marzo 2024 - MuleSoft en el mundo real: ejemplos de casos de ...jorgelebrato
 
MTM eSEC-ENISE 26Oct - Framework DNIe y Cardmodule
MTM eSEC-ENISE 26Oct - Framework DNIe y CardmoduleMTM eSEC-ENISE 26Oct - Framework DNIe y Cardmodule
MTM eSEC-ENISE 26Oct - Framework DNIe y CardmoduleMariano Tejedor
 
Presentacion Ontología de Seguridad para la securización de sistemas
Presentacion Ontología de Seguridad para la securización de sistemasPresentacion Ontología de Seguridad para la securización de sistemas
Presentacion Ontología de Seguridad para la securización de sistemasguesta3f6ce
 
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)lenny
 
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)INSIGNIA4U
 
Optimización de Contenido Flash para Móviles
Optimización de Contenido Flash para MóvilesOptimización de Contenido Flash para Móviles
Optimización de Contenido Flash para MóvilesEdgar Parada
 
Generacion simplificada de reportes de cumplimiento en ibm i
Generacion simplificada de reportes de cumplimiento en ibm iGeneracion simplificada de reportes de cumplimiento en ibm i
Generacion simplificada de reportes de cumplimiento en ibm iHelpSystems
 
Manual de uso saint administrativo
Manual de uso saint administrativoManual de uso saint administrativo
Manual de uso saint administrativoBarbara Alvarado
 
Hmi introduccion hmi
Hmi introduccion hmiHmi introduccion hmi
Hmi introduccion hmiAndres Jasso
 
Securizando por construcción mediante MDE
Securizando por construcción mediante MDESecurizando por construcción mediante MDE
Securizando por construcción mediante MDEPedro J. Molina
 
Manual de sistema de una Intranet basada en multiplataforma para la toma de d...
Manual de sistema de una Intranet basada en multiplataforma para la toma de d...Manual de sistema de una Intranet basada en multiplataforma para la toma de d...
Manual de sistema de una Intranet basada en multiplataforma para la toma de d...Yaskelly Yedra
 
Desarrollo De Aplicacion De Silverlight De Principio A Fin
Desarrollo De Aplicacion De Silverlight De Principio A FinDesarrollo De Aplicacion De Silverlight De Principio A Fin
Desarrollo De Aplicacion De Silverlight De Principio A Finvideos
 

Similar a Reglas de Oro para el Desarrollo con Windows Vista (20)

Building Ria Applications With Silverlight 2
Building Ria Applications With Silverlight 2Building Ria Applications With Silverlight 2
Building Ria Applications With Silverlight 2
 
PPT SESION 11.pdf
PPT SESION 11.pdfPPT SESION 11.pdf
PPT SESION 11.pdf
 
Ataque Informatico (Keylogger,screenshot,bavkdoor)
Ataque Informatico (Keylogger,screenshot,bavkdoor) Ataque Informatico (Keylogger,screenshot,bavkdoor)
Ataque Informatico (Keylogger,screenshot,bavkdoor)
 
Meetup Madrid 6 Marzo 2024 - MuleSoft en el mundo real: ejemplos de casos de ...
Meetup Madrid 6 Marzo 2024 - MuleSoft en el mundo real: ejemplos de casos de ...Meetup Madrid 6 Marzo 2024 - MuleSoft en el mundo real: ejemplos de casos de ...
Meetup Madrid 6 Marzo 2024 - MuleSoft en el mundo real: ejemplos de casos de ...
 
MTM eSEC-ENISE 26Oct - Framework DNIe y Cardmodule
MTM eSEC-ENISE 26Oct - Framework DNIe y CardmoduleMTM eSEC-ENISE 26Oct - Framework DNIe y Cardmodule
MTM eSEC-ENISE 26Oct - Framework DNIe y Cardmodule
 
Presentacion Ontología de Seguridad para la securización de sistemas
Presentacion Ontología de Seguridad para la securización de sistemasPresentacion Ontología de Seguridad para la securización de sistemas
Presentacion Ontología de Seguridad para la securización de sistemas
 
Dfd
DfdDfd
Dfd
 
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
 
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
 
Seguridad En Programación
Seguridad En ProgramaciónSeguridad En Programación
Seguridad En Programación
 
Optimización de Contenido Flash para Móviles
Optimización de Contenido Flash para MóvilesOptimización de Contenido Flash para Móviles
Optimización de Contenido Flash para Móviles
 
Generacion simplificada de reportes de cumplimiento en ibm i
Generacion simplificada de reportes de cumplimiento en ibm iGeneracion simplificada de reportes de cumplimiento en ibm i
Generacion simplificada de reportes de cumplimiento en ibm i
 
Manual de uso saint administrativo
Manual de uso saint administrativoManual de uso saint administrativo
Manual de uso saint administrativo
 
Hmi introduccion hmi
Hmi introduccion hmiHmi introduccion hmi
Hmi introduccion hmi
 
Introduccion hmi
Introduccion hmiIntroduccion hmi
Introduccion hmi
 
Securizando por construcción mediante MDE
Securizando por construcción mediante MDESecurizando por construcción mediante MDE
Securizando por construcción mediante MDE
 
Manual de sistema de una Intranet basada en multiplataforma para la toma de d...
Manual de sistema de una Intranet basada en multiplataforma para la toma de d...Manual de sistema de una Intranet basada en multiplataforma para la toma de d...
Manual de sistema de una Intranet basada en multiplataforma para la toma de d...
 
S2-PD2-1.2 Web Forms
S2-PD2-1.2 Web FormsS2-PD2-1.2 Web Forms
S2-PD2-1.2 Web Forms
 
Desarrollo De Aplicacion De Silverlight De Principio A Fin
Desarrollo De Aplicacion De Silverlight De Principio A FinDesarrollo De Aplicacion De Silverlight De Principio A Fin
Desarrollo De Aplicacion De Silverlight De Principio A Fin
 
Manual Tecnico
Manual TecnicoManual Tecnico
Manual Tecnico
 

Más de juliocasal

Productividad en el Equipo de Desarrollo de Software
Productividad en el Equipo de Desarrollo de SoftwareProductividad en el Equipo de Desarrollo de Software
Productividad en el Equipo de Desarrollo de Softwarejuliocasal
 
Expression Studio en Acción
Expression Studio en AcciónExpression Studio en Acción
Expression Studio en Acciónjuliocasal
 
Escribiendo Código con Visual Studio Team System
Escribiendo Código con Visual Studio Team SystemEscribiendo Código con Visual Studio Team System
Escribiendo Código con Visual Studio Team Systemjuliocasal
 
Desarrollando Una Mejor Experiencia De Usuario Con Ajax
Desarrollando Una Mejor Experiencia De Usuario Con AjaxDesarrollando Una Mejor Experiencia De Usuario Con Ajax
Desarrollando Una Mejor Experiencia De Usuario Con Ajaxjuliocasal
 
Creando Interfaces Espectaculares
Creando Interfaces EspectacularesCreando Interfaces Espectaculares
Creando Interfaces Espectacularesjuliocasal
 
Asp .Net Ajax: Patrones
Asp .Net Ajax: PatronesAsp .Net Ajax: Patrones
Asp .Net Ajax: Patronesjuliocasal
 
Introducción al Desarrollo para SharePoint con Visual Studio 2008
Introducción al Desarrollo para SharePoint con Visual Studio 2008Introducción al Desarrollo para SharePoint con Visual Studio 2008
Introducción al Desarrollo para SharePoint con Visual Studio 2008juliocasal
 

Más de juliocasal (7)

Productividad en el Equipo de Desarrollo de Software
Productividad en el Equipo de Desarrollo de SoftwareProductividad en el Equipo de Desarrollo de Software
Productividad en el Equipo de Desarrollo de Software
 
Expression Studio en Acción
Expression Studio en AcciónExpression Studio en Acción
Expression Studio en Acción
 
Escribiendo Código con Visual Studio Team System
Escribiendo Código con Visual Studio Team SystemEscribiendo Código con Visual Studio Team System
Escribiendo Código con Visual Studio Team System
 
Desarrollando Una Mejor Experiencia De Usuario Con Ajax
Desarrollando Una Mejor Experiencia De Usuario Con AjaxDesarrollando Una Mejor Experiencia De Usuario Con Ajax
Desarrollando Una Mejor Experiencia De Usuario Con Ajax
 
Creando Interfaces Espectaculares
Creando Interfaces EspectacularesCreando Interfaces Espectaculares
Creando Interfaces Espectaculares
 
Asp .Net Ajax: Patrones
Asp .Net Ajax: PatronesAsp .Net Ajax: Patrones
Asp .Net Ajax: Patrones
 
Introducción al Desarrollo para SharePoint con Visual Studio 2008
Introducción al Desarrollo para SharePoint con Visual Studio 2008Introducción al Desarrollo para SharePoint con Visual Studio 2008
Introducción al Desarrollo para SharePoint con Visual Studio 2008
 

Reglas de Oro para el Desarrollo con Windows Vista

  • 1. Vive Windows : Vive Vista!! Reglas de Oro para el desarrollo con Windows Vista Julio Casal Consultor en TI http://juliocasal.com
  • 5. Una Plataforma para impulsar la mejor experiencia API Xaml Net 3.0
  • 6.
  • 7. Compilación y ejecución Compilar, analizar y desplegar 0101010 0101010 BAML Analizar Cargar, desplegar Button b1 = new Button(); b1.Content = "OK"; b1.Background = new SolidColorBrush(Colors.LightBlue); b1.Width = 100; <Button Width="100"> OK <Button.Background> LightBlue </Button.Background> </Button> ¿XAML o código?
  • 8. Flexibilidad y Funcionabilidad en acción vb , c# XAML <Button Margin="77,0,84,60" x:Name="button1" Height="45" Click=“button1_Click”> Viva Windows</Button> private void button1_Click(object sender, RoutedEventArgs e) { button1.content=“Probemos XAML” }
  • 9. CreandoImpresiones El Poder de XAML + WPF DEMO
  • 10. Poder Gráfico de Windows Vista Aero Glass vb , c# dwmapi.dll GlassHelper.ExtendGlassFrame(this, new Thickness(a,b,c,d)); API [DllImport("dwmapi.dll", PreserveSig = false)]
  • 11.                                                              Con DWM, y la composición de escritorio  Una representación lenta causa seccionamiento (Hacer clic en la imagen para ampliarla)
  • 12. Los 4 áreas funcionales principales y públicas en la API de DWM Configuración básica de composición de escritorio Representación del efecto de cristal en una ventana de cliente Representación de vistas en miniatura Ajuste de la representación para la interacción con programas multimedia
  • 13.
  • 24.
  • 25. Utilizando las funciones DWM DwmExtendFrameIntoClientArea(Formulario , Margenes) m_glassMargins = new DwmApi.MARGINS(-1, 0, 0, 0); if (DwmApi.DwmIsCompositionEnabled()) { DwmApi.DwmExtendFrameIntoClientArea(this.Handle, m_glassMargins); } this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.SizableToolWindow; DwmRegisterThumbnail (Formulario Destino , Formulario Origen) // Registrar la funcion con el formulariodestinodondenosotrosqueremosmostrar y renderizar el thumbnail con el formulario padre m_hThumbnail = DwmApi.DwmRegisterThumbnail(this.Handle, sourceWindow); Ahora actualizamos el thumbnail para que pueda ser mostrado con sus propiedades DwmApi.DwmUpdateThumbnailProperties(m_hThumbnail, m_ThumbnailProperties); this.Show();
  • 26. CreandoImpresiones DWM y la Composición de Escritorio DEMO
  • 27. SolidocomoUna Roca DesarrollandoApicacionesMasseguras, Masconfiables, AltamenteAdministrables
  • 28. Ingenieria de ExcelenciaEl Proceso de Desarrollo en Windows Vista Entrenamiento periódico de seguridad - obligatorio Asesores de seguridad para todas las componentes Modelamiento de amenazas es parte de la fase de diseño Mediciones de seguridad, revisiones y testing Certificación Common Criteria
  • 29. En Windows Vista, Microsoft ® Internet Explorer 7 (IE7) se ejecuta en lo que se denomina modo protegido Reduce la gravedad de las amenazas a IE 7 y sus extensiones mediante la eliminación de la instalación silenciosa de código malicioso a través de las vulnerabilidades de software. ModoProtegido de Internet Explorer 7
  • 30. Basado en las nuevas caracteristicas de seguridad de Windows Vista Control de Cuentas de Usuario (User Access Control - UAC) Mecanismo de Control de Integridad (Mechanism Integrity Control - MIC) Privilegios de Aislamiento de la Interfaz de Usuario (User Interface PrivilegeIsolation- UIPI) IE7: Integracion con Windows Vista
  • 31. Quees lo que un desarrolladordebe saber: Determinarsi IE7 estacorriendo en modoprotegidoIEIsProtectedModeProcess Obtener los archivostemporales de IE de bajaprioridadque se puedaneditarIEGetWriteableFolderPathIEGetWriteableHKCU Guardarlosarchivostemporales de IE IEShowSaveFileDialog, IESaveFile, IECancelSaveFile IE7 ModoProtegidoparaDesarrolladores
  • 32. Cryptography New Generation API (CNG) Common Criterial Evaluate Asurance Level 4 Federal Information Processing Standards (FIPS) 140-2 level 2 Cryptography agility (criptografiaagnostica) Soporte de Modo Kernel Seguridad en EntornosMultiHilos Criptografia
  • 33. Suite B Anunciada por la Agencia de Seguridad Nacional (NSA) de los Estados Unidos Certificación Suite B en implementaciones Protección de la información designada como Top Secret, Secret, Sensitive-But-Unclassified. Soporte CNG: AES (todos los tamaños), SHA-2 (SHA-256, SHA-384 y SHA-512) Curva Eliptica de Diffie-Hellman ECDH, Curva elíptica DSA (ECDSA ) a lo largo de la NIST-prime curvas de nivel P-256, P-384 y P-521. CNG: SoporteSuite B
  • 34. Lo que un desarrollador.Netdebe saber: UtilizarBCRYPT_HANDLE Utilizarproveedores de AlgoritmosBCryptOpenAlgorithmProvider Generacion de numerosaleatoriosBCryptGenRandom Manejo de hash BCryptCreateHash CifradosimetricoBCryptGenerateSymmetricKey CifradoAsimetricoBCryptGenerateKeyPair ManejardatoscifradosBCryptDestroyKey, BCryptEncrypty BCryptDecrypt CNG: Para desarrolladores
  • 35. Transacciones en lasoperaciones de IO Preservaintegridad de los datosdentro del disco Permiteejecutar commit o Rollback sobreoperaciones en un grupo de archivos Transacciones NTFS (TxF)
  • 36. Se puedehabilitar el Uso de TxFpara: Actualizacion de un archivo Actualizacion de un grupo de archivos Consistencia en ActualizacionesConcurrentes Coordinar con otroAdministrador de Transacciones (DTC) No usarTxFpara: No utilice TxF para sustituir a una base de datos; TxF no es una base de datos. No utilice TxF cuando su aplicación debe tener varios clientes actualizar un archivo al mismo tiempo TxFno es apropiado para escenarios con múltiples usuarios. TxFno es apropiado para los escenarios en que un archivo es abierto por un largo período de tiempo TxF: EscenarioUsuales
  • 37. Puntos claves del modelo de desarrollo con TxF Cerrar el handler antes de un Commit o Rollback Un archivo se consideracomounaunidad de Almacenamiento Memoria mapeada de E / S es transparente y coherente con el archivo normal de I / O. TxF : Para desarrolladores
  • 39. Basado en los principios de Least Priviliges Todousuarioes un usuario Standard Elevacion de privilegiosrequiereconformidad con el usuario Corrige o remuevecheksadministrativos no autorizados User Account Control
  • 40. El icono de Security Shield identificalasoperacionequenecestanelevacion de privilegios UAC: Prompting
  • 41. Lo que un desarrollador de .Net, debe saber : Cómo integrar un manifiesto en un ejecutable administrado Cómo poner en marcha un proceso con privilegios elevados Cómo establecer el icono del Security Shield Cómo depurar aplicaciones UAC-aware con Visual Studio UAC paraDesarrolladores
  • 42. SolidocomoUna Roca User Account Control DEMO
  • 43. 10 Reglas para el Desarrollo de Mejores Soluciones en Vista
  • 44. Reglas para el diseño de UX
  • 45. 1 Ventanas Estándares y Glass Glass 600px 800px
  • 46. 2 Controles y ventanas de diálogo comunes
  • 47. 3 Iconos y gráficos consistentes con Windows Vista en estilo y calidad
  • 49. 4 Aislamiento de Sesión Sesión 0 Sesión 1 Sesión 2
  • 50. 5 Brindar Soporte para UAC
  • 51. 6 Siempre Generar un Manifiesto de Aplicación Manifiesto de la Aplicación
  • 52. 7 Probar tu aplicación como Usuario Estándar
  • 53. Mejores practicas para aprovechar las características de Vista
  • 54. 8 El Tema Aero y la fuente Segoe Use esta fuente
  • 55. 9 Realizar un chequeo inteligente de la versión de Windows ¿Veamos que Windows Tengo?
  • 57. Resumen de la Sesion UX Aero Glass XAML + WPF DWM Seguridad SDL IE –modoprotegido/anti-phishing UAC TxF CriptografiaAvanzada MejoresPracticas UAC-aware Aero Glass y Segoe Version check Windows Search Model
  • 58. Windows Vista Application Compatibility http://msdn2.microsoft.com/en-us/windowsvista/aa904987.aspx Top 10 Ways to Light Up Your Windows Vista Apps http://msdn2.microsoft.com/en-us/windowsvista/aa904975.aspx Designing UAC Applications for Windows Vista http://msdn2.microsoft.com/en-us/library/bb756973.aspx Top Rules for the Windows Vista User Experience http://msdn2.microsoft.com/en-us/library/aa511327.aspx Desktop Window Manager http://msdn2.microsoft.com/en-us/library/aa969540(VS.85).aspx Recursos
  • 59. © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Notas del editor

  1. Windows Vista como plataforma, ofrece para los desarrolladores que desean crear aplicaciones robustas, visualmente atractivas y experiencias de usuario, altamente diferenciadas, el más productivo, seguro y confiable entorno. Los desarrolladores pueden aprovechar el .NET Framework para desarrollar de forma rápida y segura aplicaciones o sitios Web, aprovechar las API de Windows nativas para proveer de funcionalidad y rendimiento adicional a sus aplicaciones o mezclar libremente ambos modelos. Los usuarios de hoy son más exigentes en cuanto la calidad y usabilidad de sus aplicaciones de negocio. Windows Vista ®, habilita a los desarrolladores a cumplir con estas expectativas, proporcionando a los usuarios mejoras en la calidad y fiabilidad de sus aplicaciones creando impresiones bajo el marco de una UX mejorada, en conjunto con un modelo de seguridad superior para el desarrollo de aplicaciones solidas como una roca
  2. Rgonzalez –Diferencia en la ejecucion de codigo y XAML
  3. Windows Vista fuediseñadobajo los principios del Secure Development Lifecycle lo queincluyeEntreanmientoperiodico en seguridad al equipo de desarrolloAsesores de seguridadpara el diseño y desarrllo de cadacomponenteModelamiento de amenazasMediciones de seguridadrevisiones y TestingEl cumplimiento de la certificacion Common Criteraesuna de lasmayoresmetasobtenidaspor Windows VistaEl CommonCriteria es un estándar internacionalmente reconocido y fundamentado en las normas ISO/IEC 15408:2005 e ISO/IEC 18405:2005.8. Para evaluar la seguridad de un producto y hacerlo merecedor de este certificado, se deben comprobar numerosos parámetros relacionados con la seguridad y propuestos previamente por el fabricante. Estos parámetros han sido consensuados y aceptados por 22 países de todo el mundo, hasta el punto de que algunos gobiernos (como el de Estados Unidos de América) exigen esta certificación para poder utilizar sus sistemas. El visto bueno de la CommonCriteriaOrgantization permite que el producto sea usado en sistemas críticos de los gobiernos e instituciones de todo el mundo, ya sea pertenecientes a bancos, agencias secretas de inteligencia o el mismísimo Pentágono.
  4. En Windows Vista, Microsoft Internet Explorer 7 (IE7) se ejecuta en lo que se denomina modo protegido, el cual ayuda a proteger a los usuarios de los ataques ya que ejecuta el navegador con privilegios muy restringidos.El Modo protegido,ayuda a reducir la gravedad de las amenazas a IE 7 y sus extensiones mediante la eliminación de la instalación silenciosa de código malicioso a través de las vulnerabilidades de software
  5. Si bien la mayoría de las características de seguridad de IE 7 estan disponibles Windows XP SP 2, el modo protegido sólo está disponible en Windows Vista, ya que se basa en las nuevas características de seguridad de Windows Vista. Control de cuentas de usuario (UAC) hace que sea fácil de ejecutar sin privilegios de administrador. Cuando los usuarios ejecutan programas de usuario con privilegios limitados, se reduce la amenaza de ataques que se presentan cuando se ejecuta con privilegios de administrador de El Mecanismo de control de Integridad restringe el acceso de escritura a los objetos asegurables por los procesos con menor integridad, casi de la misma manera que el UAC restringe los derechos de los usuarios para acceder a los componentes sensibles del sistema,esto permite una distinción adicional de seguridad más allá de nivel de privilegioLos privilegios Aislamiento de la Interfaz de usuario (UIPI) impide el envío de mensajes a los procesos de menor privilegio, llamados a veces procesos de token filtrado, a otros procesos que se ejecuten con mayor integridad de privilegios. La infraestructura de seguridad de Windows Vista permite a IE proporcionar un modo protegido con los privilegios necesarios para navegar por la Web, reteniendo los privilegios necesarios para instalar silenciosamente programas o modificar datos sensibles del sistema.
  6. El API de IE modo protegido permite a los proveedores de software desarrollar extensiones y complementos para IE7,que puede interactuar con el sistema de archivos y registros de un proceso de minima integridad de privilegios.Las extensiones escritas para IE 7 debería escribir archivos y ajustes a la baja ubicación de la integridad, tales como la carpeta Archivos temporales de Internet, de manera predeterminada. Baja integridad lugares permitir el acceso de escritura para los procesos con un bajo nivel de privilegio. Escribir a ubicaciones de baja integridad ayuda a proteger el sistema contra ataquespotencialmente maliciososPara determinar si IE7 se ejecuta en modo protegido, llame a la función IEIsProtectedModeProcess. Para encontrar la ubicación de un archivo o registro de baja integridad que una extension in-process de IE7 pueda escribir, se debe de llamar a la función IEGetWriteableFolderPath o a la función IEGetWriteableHKCUCuando los controles Microsoft ActiveX y otras extensiones se ejecuta en modo protegido, no pueden descargar archivos directamente fuera de los Archivos temporales de Internet, Historial, cookies, y de las carpetas Temp. Las operaciones de Archivo que tratan de escribir a otros lugares son interceptados y redireccionados a una ubicacion &quot;virtualizada“ de baja integridad. Para guardar un archivo fuera de la ubicación virtualizada, las extensiones pueden usar las siguientes funciones de la API de modo protegido. IEShowSaveFileDialog-esta función con una ubicación de destino del archivo que desea que el usuario pueda guardar en. El usuario es impulsado con el cuadro de diálogo Guardar como, y la función devuelve la ruta del archivo de destino que el usuario especifique. IESaveFile-Llame a esta función en conjunto con elhandler de la operación anterior de descarga del archivo temporal, retornando la ubicación de descarga del archivo. El proceso ModeProtectedUserBrokercopia el archivo de la ubicación temporal a la ubicación de destino. Para liberar la memoria asociada sin guardar el archivo, podemos utilizarIECancelSaveFile.
  7. Es el reemplazo a largo plazo para el CryptoAPI, ya ke GNC está diseñado para ser extensible a muchos niveles, apuntando al comportamiento de la criptografía agnóstica.GNC esta soportado por las Normas Federales del Procesamiento de Información (FIPS) 140-2 nivel 2, junto con la certificación CommonCriteria sobre determinadas plataformas. Otras plataformas tendrán FIPS 140-2 nivel 1. Estas plataformas tendrán la misma aplicación de GNC, sólo diferentes certificaciones. GNC cumple con los requisitos delCommonCriteria en temas almacenamiento y uso de claves de larga vida en un proceso seguroUna de las principales mejras del CNG es CryptographyAgility, tambien llamada criptografía agnostica. La mayoría de las API de criptografía están concebidas desde un enfoque centrado en los algoritmos, mientras que CNG se centra en la interfaz. Esto ofrece una mayor agilidad tanto para el desarrollador como para el administrador de aplicaciones que podrían necesitar reemplazar un algoritmo que usa una aplicación y que se descubre que presenta errores cuando la aplicación ya se ha lanzado al mercadoBCrypt, el subconjunto de CNG que ofrece primitivas criptográficas como, por ejemplo, la generación de números aleatorios, funciones de hash, firmas y las claves de cifrado. En cambio, NCrypt es el subconjunto de CNG que ofrece las funciones de almacenamiento de claves para admitir claves asimétricas persistentes y hardware, tales como las tarjetas inteligentes. &quot;B&quot; significa &quot;base“ &quot;N&quot; significa &quot;nuevo&quot;.Las primitivas criptográficas que ofrece BCrypt están disponibles directamente en modo de núcleo, lo que ofrece por primera vez un marco criptográfico común tanto para las aplicaciones de modo de usuario como para las de modo de núcleo. Sin embargo, las funciones de almacenamiento de claves que ofrece NCrypt sólo están disponibles para aplicaciones de modo de usuario.
  8. En febrero de 2005, la Agencia de Seguridad Nacional (NSA) de los Estados Unidos anunció un conjunto coordinado de encriptación simétrica, asimétrica deacuerdo secreto,conocido también como intercambio de claves, firma digital y funciones hash para uso futuro del gobierno de los EE.UU. llamado Suite B. NSA ha anunciado que la certificación Suite B en implementaciones y se utilizarán para la protección de la información designada como Top Secret, Secret, información privada que en el pasado fue descrito como Sensitive-But-Unclassified. Debido a esto, el soporte para Suite B es muy importante para vendedores de software de aplicaciones e integradores de sistema, así como para Microsoft. Todos los algoritmos Suite B son de conocimiento público. Ellos se han desarrollado fuera del alcance del secreto del gobierno de los EEUU, históricamente asociado con el desarrollo de algoritmos criptográficos. En este mismo período de tiempo, algunos países europeos y regiones también han propuesto la mismos requisitos de Suite B para la protección de su información. Suite B recomienda el uso de la criptografía de curva elíptica Diffie-Hellman (ECDH) en muchos protocolos existentes, como Internet Key Exchange (IKE, utilizado principalmente en IPsec), Transporte Layer Security (TLS) y Secure MIME (S / MIME). CNG incluye soporte para Suite B, que se extiende a todos los algoritmos necesarios: AES (todos los tamaños), la familia SHA-2 (SHA-256, SHA-384 y SHA-512), de los algoritmos de hashing, ECDH, y la curva elíptica DSA (ECDSA ) a lo largo de la NIST-prime curvas de nivel P-256, P-384 y P-521. Curvas binarias como las curvas de Koblitz, la costumbre primera curvas, y la curva elíptica Menezes-Qu-Vanstone (ECMQV) no están soportadas por Microsoft y los proveedores de algoritmo incluidos con Windows Vista.
  9. CNG es para uso de los desarrolladores de aplicaciones que permitirá a los usuarios crear e intercambiar documentos y otros datos en un entorno seguro, especialmente por los medios no seguros de comunicación como la Internet. CNG es actualmente soportada en Windows Server 2008 y Windows Vista. Todos los objetos de CNG que define BCrypt se identifican por un BCRYPT_HANDLE y los proveedores de algoritmos no son ninguna excepción. La función BCryptOpenAlgorithmProvider carga un proveedor de algoritmos en función de los algoritmos y la implementación opcional de su elección y devuelve un identificador para usarlo en posteriores llamadas a funciones de CNGLa generación de números aleatorios se ofrece mediante la función BCryptGenRandom. También se podría haber llamado generación aleatoria del búfer, ya que permite llenar cualquier búfer con un valor aleatorioAl igual que en la generación de números aleatorios, las funciones hash tienen un papel crítico en la habilitación de las medidas y funciones de seguridad en muchos aspectos de la informática moderna. Las funciones hash se exponen como objetos en CNG, pero debido a que la API necesita estar accesible desde el código de modo de núcleo La función BCryptCreateHash crea un nuevo objeto hash. Sin embargo, antes de invocarlo, necesita haber asignado un búfer que usará la función hash para el procesamientoEl cifrado simétrico empieza de forma muy parecida a las funciones hash, por lo que se necesita crear y preparar la clave simétrica y su búfer de objeto. Los pasos deben resultar familiares: crear un proveedor de algoritmos, determinar el tamaño del búfer de objetos de clave consultando la propiedad BCRYPT_OBJECT_LENGTH del proveedor y asignar un búfer de ese tamaño. Una invocación de la función BCryptGenerateSymmetricKey con un secreto para inicializarlo crea la clave simétricaEl cifrado asimétrico resuelve los problemas relacionados con compartir secretos y vectores de inicialización al usar un enfoque de clave pública, donde ambas partes mantienen una clave privada y una pública. Las claves públicas están a disposición de cualquiera. Las claves están relacionadas de manera que sólo la clave privada pueda usarse para descifrar datos cifrados con la clave pública. Naturalmente, esta potencia adicional tiene un costo y el cifrado asimétrico resulta ser bastante más costoso en términos de cálculo si se compara con el cifrado simétricoCuando haya terminado con el objeto clave, debe destruirlo con la función BCryptDestroyKey y después liberar el búfer del objeto de claveCuando haya creado un objeto de clave, lo más probable es que desee cifrar y descifrar algunos datos con él, así que vamos a hacerlo. Las funciones BCryptEncrypt y BCryptDecrypt (que tienen nombres muy apropiados) se usan para cifrar y descifrar datos para claves simétricas y asimétricas
  10. Windows Vista proporciona una infraestructura transaccionalen el núcleo del sistema operativo que permite que a los servicios para participar en forma transaccional. El sistema utiliza el KernelTransaction Manager (KTM) a fin de proporcionar transaccionalidad a los archivo y operaciones entrada / salida (I / O) soportada en el sistema de archivos NTFS. TxF permite operaciones sobre un sistema de ficheros NTFS. Dado que las transacciones se pueden utilizar tanto para preservar la integridad de los datos y manejar condiciones de error de manera fiable, se puede utilizarpara desarrollar robustas soluciones en la plataforma Windows VistaTxF permite a una aplicación agrupar múltiples operaciones de grupo en varios archivos como una sola unidad de la transacción. Una aplicación puede luego confirmar o hacer rollback a todo el grupo de los cambios como una sola unidad
  11. Losescenarioscomunesdentrodelssistema de archivosparaimplementarTxF en nuestrasaplicacionesLas actualizaciónes de archivos es una operación simple normalmente. Sin embargo, si un ordenador falla miestras una aplicación esta realizando una actualización de la información en el disco, el resultado puede ser catastrófico, ya que los datos del usuario pueden ser dañados por la operación de actualización parcialmente completa. TxF hace que sea simple para una aplicación para proteger las operaciones de actualización del archivo de los fallo del sistema. Para actualizar los datos de un archivo en condiciones de seguridad, la aplicación abre el archivo en modo de transacción, hace las actualizaciones necesarias, y luego compromete la transacción. Si el sistema falla durante la actualización del archivo, entonces TxF restablece automáticamente el archivo en el estado que tenía antes que la actualización del archivo comenzara, evitando la corrupción del archivo.Se puede usar TxF en actualizaciones concurrentes. Si una aplicación abre un archivo para una transacción lee el archivo mientras que otra aplicación ha abierto el mismo archivo para una transacción de actualización, TxFaisla los efectos de las dos transacciones una de la otra. En otras palabras.Una aplicación puede utilizar esta funcionalidad para permitir a los clientes ver los archivos, mientras que otros clientes realizar actualizaciones. Por ejemplo, un servidor web transaccional pueden proporcionar una única y coherente vista de los archivos, mientras que otra herramienta realiza las actualizaciones de los archivos simultáneamente. Nota TxF no soporta actualizaciones concurrentes por varios escritores de distintas transacciones. TxF sólo admite un único escritor con múltiples concurrentes y coherente lectores.Las transaccionesrealizadassobre el sistema de archivospueden ser coordinadas en una sola transaccionutilizando el DTC o lasclasesproporcionadasporSystem.TransactionsNo esrecomendableusarTxFpara:No utilice TxF para sustituir a una base de datos; TxF no es una base de datos. No utilice TxF cuando su aplicación debe tener varios clientes que van a actualizar un archivo al mismo tiempo, el archivo es bloqueado para escribir en una transacción. TxF no es apropiado para escenarios con múltiples usuarios. TxF no es apropiado para los escenarios en que un archivo es abierto por un largo período de tiempo, como el archivo de registro, que a menudo son abiertas durante más de un día.
  12. El TxF modelo de programación tiene los siguientes puntos clave para que usted cuenta en el momento de desarrollar un TxF aplicación: Se recomienda que una aplicación cierre el handler del archivo, antes de realizar un commito rollback. El sistema invalida los handlers cuando una transacción termina. Si no se hace devuelve el siguiente error: ERROR_HANDLE_NO_LONGER_VALID. Un archivo se considera como una unidad de almacenamiento. Actualizaciones parciales y sobrescribir el archivo completo se apoyan. Varias transacciones no pueden modificar el mismo archivo. Memoria mapeada de E / S es transparente y coherente con el archivo normal de I / O. La solicitud debe realizar un flush y cerrar una sección abierta antes de culminar transacción. El hecho de no hacerlo puede dar lugar a modificaciones parciales a la seccion asignada en el archivo de transacción. El realizar Rollback falla en este caso
  13. Porque el uso de UAC, frecuentementeescuchoquejasacerca de estacaracteristica de Seguridad en Windows VistaLos desarrolladores han creado aplicaciones para Windows que requieren excesivos derechos de los usuarios privilegios, a menudo requieren que el usuario debe ejecutar un administrador. Como resultado de ello, son pocos los usuarios de Windows que ejecutan con el menor derecho y los privilegios necesarios. Muchas empresas, la búsqueda de equilibrio en la facilidad de despliegue y facilidad de uso con la seguridad, a menudo han recurrido al despliegue de sus computadoras de escritorio como administrador debido al tema de compatibilidad de las aplicaciones con los usuario estándar, de algun tipo de problemasBajo control de cuentas de usuario de Windows Vista, todos los procesos interactivos se ejecutan como usuario estándar por defecto, incluso si son lanzados por un miembro del grupo de Administradores. Los Desarrolladores en frente a UAC debe entender cómo funciona y cómo puede incidir en sus aplicaciones.
  14. UAC Prompts se muestran en el Secure Desktop por Default
  15. Como desarrolladoresdebemospoderdesarrollaraplicaciones UAC-aware, En Windows Vista, la forma correcta de marcar las aplicaciones es a traves de un manifiesto el cualle dice al sistema operativo lo que la aplicación necesita. Proporcionar el nivel de ejecución es una extensión de las aplicaciónexstentes dentro del esquema del manifiestoEn general, no debe añadir el escudo icono directamente a su interfaz de usuario. Es recoendable utilizar uno de los métodos que incluya el escudo en un icono del control. Además, sólo añadir un escudo icono en su interfaz de usuario no UAC garantizar la compatibilidad. También debe refractar la totalidad de su solicitud de la experiencia del usuario, añadir un requestedExecutionLevel, arreglar cualquier usuario estándar problemas de compatibilidad de aplicaciones, y asegurarse de que la interfaz de usuario es fácil de usar y compatible UAC