Llamando a la barra de tareas de Windows 7 Nuevas funciones con código administrado

  

Preparando

Windows 7 Beta se ha lanzado públicamente desde http://www.microsoft.com/windows/windows-7/beta -descargar.aspx descargar. W7 ha realizado muchas mejoras en la barra de tareas. Para conocer las nuevas funciones de la barra de tareas, puede consultar http://blogs.msdn.com/e7/archive/2008/11/20/happy-anniversary-windows-on-the -evolution-of-the-taskbar.aspx. Si desea desarrollar Windows 7, es mejor consultar el documento técnico, disponible en http://code.msdn.microsoft.com/PDC08WhitePapers/Release/ProjectReleases.aspx? ReleaseId = 1797 descarga. Usaremos las mejoras de la barra de tareas de Windows 7 para nuestro desarrollo de la barra de tareas. Aquí implementamos principalmente los iconos de superposición y las barras de progreso en el icono de la barra de tareas. La versión beta de Windows 7 SDK también puede ser necesaria durante el proceso de implementación.

Comenzando

Primero encuentre el archivo ShObjIdl.idl en el SDK de Windows. Si no tiene el SDK instalado, puede descargarlo más tarde. Este es un archivo de lenguaje de definición de interfaz, con el fin de facilitar la llamada, estaremos
similares

1HRESULT SetProgressValue (2 [en] HWND hwnd, 3 [en] ULONGLONG ullCompleted, 4 [en] ULONGLONG ullTotal);

para declarar una interfaz tal

1HRESULT SetProgressValue (2 [en] hwnd de largo, 3 [en] ULONGLONG ullCompleted, 4 [en] ULONGLONG ullTotal);

es el hWND Tipo se cambia a largo. Luego use midl para convertir el archivo idl modificado en un archivo binario tlb, ShObjTlb.tlb es el archivo generado y ShObjIdl.idl es el archivo original.


Luego use tlbimp para generar el archivo dll administrado para el archivo tlb.


Agregue una referencia a la dll en su proyecto, y luego puede llamar a los métodos como una dll administrada.

Para avanzar en el icono de la barra de tareas, se utilizan dos funciones, SetProgressState y SetProgressState.

El primer parámetro es el método mango SetProgressState, el segundo parámetro es una enumeración que indica el estado actual del icono, podemos definir una enumeración propia para representar estos estados

1private enumeración TbpFlag2 {3 TBPF_ERROR = 1,4 TBPF_PAUSED = 2,5 TBPF_NORMAL = 3,6 TBPF_INDETERMINATE = 4,7};

a continuación, se puede utilizar SetProgressState ((int) this.Handle, TBPFLAG.TBPF_NORMAL); la El estado del icono se establece en el estado normal.

SetProgressValue ((int) this.Handle, 50, 100). Puede establecer el progreso, el primer parámetro es el controlador, el segundo parámetro es la cantidad completada y el tercer parámetro es la cantidad total.

Para obtener detalles sobre cómo usar estas funciones, compruebe el SDK de Windows 7 o la versión en inglés de MSDN Library.

Efectos

Cuando se completa el 20%:


Cuando se completa el 50%:


100% completado Hora:


Otros

De acuerdo con este método y con referencia al documento técnico del PDC2008, puede implementar otras funciones nuevas de Windows 7 en un idioma administrado.

código no administrado

Si utiliza C ++ para lograr esta función será más simple, se puede referir a la SDK de Windows, Microsoft SDKsWindowsv7.0SampleswinuiShellTaskbarIntegrationPeripheralStatus
recorrido del papel es el código de la muestra o el material descargado

Copyright © Conocimiento de Windows All Rights Reserved