Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Los controladores no tienen que admitir la adquisición de carpetas directamente. "Si los controladores no ofrecen soporte, el servicio WIA recorrerá de forma recursiva el árbol de elementos y llamará a IWiaMiniDrv::drvAcquireItemData en todos los elementos que tengan el "bit" WiaItemTypeTransfer establecido en la propiedad WIA_IPA_ITEM_FLAGS."
Los controladores que admiten la adquisición de carpetas directamente deben exponer la propiedad WIA_IPS_TRANSFER_CAPABILITIES en el elemento de carpeta. Esta propiedad es una propiedad de bandera y debe tener el bit WIA_TRANSFER_ACQUIRE_CHILDREN_CAPABLE configurado para indicar que soporta directamente la funcionalidad de adquisición de carpetas. Este soporte significa que el propio controlador recorrerá el árbol para transferir los elementos pertinentes y el servicio WIA simplemente llamará a IWiaMiniDrv::drvAcquireItemData en el directorio. El controlador puede diferenciar entre una solicitud de transferencia normal y una solicitud de adquisición de carpetas probando el parámetro lFlags para el bit de WIA_TRANSFER_ACQUIRE_CHILDREN.
Una de las principales razones por las que un controlador admitiría la adquisición de carpetas directamente es la eficiencia. Un controlador puede transferir varios elementos de manera mucho más eficaz que si el servicio WIA efectuara una transferencia para cada elemento.
Un buen ejemplo de esta situación es durante un examen de varias regiones. Cuando se detectan varias regiones (como imágenes independientes) en el plano de un escáner, podrían representarse como elementos secundarios del elemento "Plano". En la ilustración siguiente se representa un ejemplo de esta situación.
Si se llamó a una transferencia independiente en cada uno de los elementos secundarios de "Flatbed", el controlador realizaría tres escaneos independientes, lo que podría llevar mucho tiempo. Sin embargo, si se solicitó una adquisición de carpetas en "Flatbed", el controlador realizaría un examen, lo descomponía y devolvería tres regiones independientes (que a menudo es más rápido).
Nota Se recomienda que solo los controladores más sofisticados admitan directamente la adquisición de carpetas, ya que el controlador es responsable de caminar por el árbol de elementos y tomar la acción adecuada.