As bibliotecas do Windows 7 são na verdade apenas arquivos XML, com algumas extensões de shell inteligentes que os gerenciam. Todos eles são chamados [Library_Name] .library-ms (por exemplo, Pictures.library-ms) e podem ser abertos em qualquer editor de texto, como o bloco de notas, arrastando e soltando.
Os arquivos podem ser publicados usando qualquer mecanismo normal - scripts, Preferências de Diretiva de Grupo etc.
Descobri algumas coisas que você deve saber:
O XML armazena informações sobre o usuário que está usando o arquivo de biblioteca
O Windows atualizará / substituirá automaticamente o XML quando você clicar duas vezes nele / manipulá-lo. Isso é especialmente problemático como administrador, em que o clique duplo tornará seu arquivo inutilizável para os usuários.
Se você tornar o arquivo somente leitura, isso fará com que a biblioteca pareça somente leitura, impedindo que os usuários salvem.
Após algumas tentativas e erros, desenvolvi alguns modelos "em branco" usando as Bibliotecas padrão que publicarei abaixo.
Você pode usar o seguinte guia de pastas conhecidas para personalizar novos locais padrão:
http://msdn.microsoft.com/en-us/library/bb882665.aspx
E eu achei as seguintes referências úteis sobre a arquitetura da biblioteca:
http://msdn.microsoft.com/en-us/library/windows/desktop/dd798389(v=vs.85).aspx
http://msdn.microsoft.com/en-us/magazine/dd861346.aspx
Essencialmente, porém, a maneira que achei melhor para experimentar foi simplesmente fazer alterações usando a GUI e examinar o que foi alterado.
Documentos
<?xml version="1.0" encoding="UTF-8"?>
<libraryDescription xmlns="http://schemas.microsoft.com/windows/2009/library">
<name>@shell32.dll,-34575</name>
<version>20</version>
<isLibraryPinned>true</isLibraryPinned>
<iconReference>imageres.dll,-1002</iconReference>
<templateInfo>
<folderType>{7d49d726-3c21-4f05-99aa-fdc2c9474656}</folderType>
</templateInfo>
<propertyStore>
<property name="HasModifiedLocations" type="boolean"><![CDATA[false]]></property>
</propertyStore>
<searchConnectorDescriptionList>
<searchConnectorDescription publisher="Microsoft" product="Windows">
<description>@shell32.dll,-34577</description>
<isDefaultSaveLocation>true</isDefaultSaveLocation>
<isDefaultNonOwnerSaveLocation>true</isDefaultNonOwnerSaveLocation>
<isSupported>true</isSupported>
<simpleLocation>
<url>knownfolder:{FDD39AD0-238F-46AF-ADB4-6C85480369C7}</url>
</simpleLocation>
</searchConnectorDescription>
</searchConnectorDescriptionList>
</libraryDescription>
Música
<?xml version="1.0" encoding="UTF-8"?>
<libraryDescription xmlns="http://schemas.microsoft.com/windows/2009/library">
<name>@shell32.dll,-34584</name>
<version>12</version>
<isLibraryPinned>true</isLibraryPinned>
<iconReference>imageres.dll,-1004</iconReference>
<templateInfo>
<folderType>{94d6ddcc-4a68-4175-a374-bd584a510b78}</folderType>
</templateInfo>
<propertyStore>
<property name="HasModifiedLocations" type="boolean"><![CDATA[false]]></property>
</propertyStore>
<searchConnectorDescriptionList>
<searchConnectorDescription publisher="Microsoft" product="Windows">
<description>@shell32.dll,-34577</description>
<isDefaultSaveLocation>true</isDefaultSaveLocation>
<isDefaultNonOwnerSaveLocation>true</isDefaultNonOwnerSaveLocation>
<isSupported>true</isSupported>
<simpleLocation>
<url>knownfolder:{4BD8D571-6D19-48D3-BE97-422220080E43}</url>
</simpleLocation>
</searchConnectorDescription>
</searchConnectorDescriptionList>
</libraryDescription>
As fotos
<?xml version="1.0" encoding="UTF-8"?>
<libraryDescription xmlns="http://schemas.microsoft.com/windows/2009/library">
<name>@shell32.dll,-34595</name>
<ownerSID></ownerSID>
<version>6</version>
<isLibraryPinned>true</isLibraryPinned>
<iconReference>imageres.dll,-1003</iconReference>
<templateInfo>
<folderType>{b3690e58-e961-423b-b687-386ebfd83239}</folderType>
</templateInfo>
<propertyStore>
<property name="HasModifiedLocations" type="boolean"><![CDATA[false]]></property>
</propertyStore>
<searchConnectorDescriptionList>
<searchConnectorDescription publisher="Microsoft" product="Windows">
<description>@shell32.dll,-34577</description>
<isDefaultSaveLocation>true</isDefaultSaveLocation>
<isDefaultNonOwnerSaveLocation>true</isDefaultNonOwnerSaveLocation>
<isSupported>false</isSupported>
<simpleLocation>
<url>knownfolder:{33E28130-4E1E-4676-835A-98395C3BC3BB}</url>
</simpleLocation>
</searchConnectorDescription>
</searchConnectorDescriptionList>
</libraryDescription>
Vídeos
<?xml version="1.0" encoding="UTF-8"?>
<libraryDescription xmlns="http://schemas.microsoft.com/windows/2009/library">
<name>@shell32.dll,-34620</name>
<ownerSID></ownerSID>
<version>4</version>
<isLibraryPinned>true</isLibraryPinned>
<iconReference>imageres.dll,-1005</iconReference>
<templateInfo>
<folderType>{5fa96407-7e77-483c-ac93-691d05850de8}</folderType>
</templateInfo>
<propertyStore>
<property name="HasModifiedLocations" type="boolean"><![CDATA[false]]></property>
</propertyStore>
<searchConnectorDescriptionList>
<searchConnectorDescription publisher="Microsoft" product="Windows">
<description>@shell32.dll,-34577</description>
<isDefaultSaveLocation>true</isDefaultSaveLocation>
<isDefaultNonOwnerSaveLocation>true</isDefaultNonOwnerSaveLocation>
<isSupported>false</isSupported>
<simpleLocation>
<url>knownfolder:{18989B1D-99B5-455B-841C-AB7C74E4DDFC}</url>
</simpleLocation>
</searchConnectorDescription>
</searchConnectorDescriptionList>
</libraryDescription>