Bagaimana saya bisa memanipulasi Perpustakaan Windows 7 melalui Kebijakan Grup?


11

Saya mencoba untuk menambah dan menghapus lokasi Perpustakaan dari lokasi "Perpustakaan" Windows 7 di untuk setiap pengguna saya.

Meskipun mudah dilakukan dari desktop, dan mudahnya untuk menonaktifkan pustaka yang muncul di explorer, bagaimana saya bisa menambah atau menghapus lokasi dari lokasi pustaka (mis. Hapus c: \ users \ public \ dokumen dari pustaka dokumen pengguna)?

Saya tidak perlu 'mengunci' daftar lokasi perpustakaan mereka, saya senang mereka menambahkan dan menghapus lokasi mereka sendiri seperti yang mereka inginkan, tetapi saya ingin mengontrol lokasi awal yang mereka tawarkan.


Menambahkan pertanyaan & jawaban ini untuk mendokumentasikan sesuatu yang sulit saya pecahkan, sehingga dapat membantu orang lain. Saya masih sangat tertarik untuk mendengar metode lain, terutama yang lebih mudah, yang saya lewatkan!
Rob Moir

Jawaban:


11

Perpustakaan Windows 7 sebenarnya hanya file XML dengan beberapa ekstensi shell pintar yang mengaturnya. Semuanya disebut [Library_Name] .library-ms (Eg Pictures.library-ms) dan dapat dibuka di editor teks apa pun seperti notepad dengan menyeret dan menjatuhkan.

File-file tersebut kemudian dapat dipublikasikan menggunakan mekanisme normal - skrip, Preferensi Kebijakan Grup dll.

Ada beberapa hal yang saya temukan, yang harus Anda perhatikan:

  • XML menyimpan informasi tentang pengguna yang menggunakan file perpustakaan

  • Windows akan secara otomatis memperbarui / menimpa XML ketika Anda mengklik dua kali / memanipulasinya. Ini terutama bermasalah sebagai administrator di mana mengklik dua kali akan membuat file Anda tidak dapat digunakan oleh pengguna

  • Jika Anda membuat file hanya baca, ini akan memiliki efek membuat perpustakaan tampak hanya baca, sehingga mencegah pengguna menyimpan.

Setelah beberapa percobaan dan kesalahan, saya mengembangkan beberapa template 'kosong' menggunakan Perpustakaan default yang saya posting di bawah ini.

Anda dapat menggunakan panduan folder yang dikenal berikut untuk menyesuaikan lokasi default baru:

http://msdn.microsoft.com/en-us/library/bb882665.aspx

Dan saya telah menemukan yang berikut sebagai referensi yang berguna mengenai arsitektur perpustakaan:

http://msdn.microsoft.com/en-us/library/windows/desktop/dd798389(v=vs.85).aspx http://msdn.microsoft.com/en-us/magazine/dd861346.aspx

Namun, pada dasarnya, cara terbaik yang saya temukan untuk bereksperimen adalah dengan membuat perubahan menggunakan GUI dan memeriksa apa yang diubah.

Dokumen

<?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>

Musik

<?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>

Foto-foto

<?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>

Video

<?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>

2
Bagi mereka yang bertanya-tanya di mana mereka disimpan, mereka dapat ditemukan di bawah%APPDATA%\Microsoft\Windows\Libraries
Agent_9191

Pembaruan yang bagus akan menjadi cara untuk menunjukkan perpustakaan ke jaringan berbagi: \\server\%username%\documents, \\server\%username%\music, dll, sementara itu akan bekerja tidak peduli yang log pengguna di.
Joel Coel

7

Satu-satunya metode yang saya temukan adalah menggunakan ekstensi Windows 7 Powershell untuk Perpustakaan, tersedia dari codeplex di sini .

Ini dapat digunakan dalam skrip login (harus dijalankan untuk setiap pengguna, dalam konteksnya), dan itu termasuk metode untuk menambah dan menghapus lokasi perpustakaan.

Kode sampel

Import-Module "\\myserver\location\Windows7Library\Windows7Library.psm1"
# Before we can use the new commands from this module, it needs to be imported.

add-LibraryFolder -LibraryPath (Get-KnownFolder "VideosLibrary").path -FolderPath "\\borehamwood\dvds"
# add location to video library
#
Remove-LibraryFolder -LibraryPath (Get-KnownFolder "DocumentsLibrary").path -FolderPath "C:\users\Public\Documents"
Remove-LibraryFolder -LibraryPath (Get-KnownFolder "MusicLibrary").path -FolderPath "C:\users\Public\Music"
# remove locations from both the documents, and then the music library.
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.