Làm cách nào tôi có thể thao tác Thư viện Windows 7 thông qua Chính sách nhóm?


11

Tôi đang cố gắng thêm và xóa các vị trí Thư viện khỏi các vị trí "Thư viện" của Windows 7 cho mỗi người dùng của tôi.

Mặc dù dễ dàng thực hiện việc này từ máy tính để bàn và dễ dàng vô hiệu hóa các thư viện xuất hiện trong trình thám hiểm, làm cách nào tôi có thể thêm hoặc xóa các vị trí khỏi vị trí thư viện (ví dụ: xóa c: \ users \ public \ Documents khỏi thư viện tài liệu của người dùng)?

Tôi không cần phải 'khóa' danh sách các vị trí thư viện của họ, tôi rất vui khi họ thêm và xóa vị trí của họ theo ý muốn, nhưng tôi muốn kiểm soát các vị trí ban đầu mà họ được cung cấp.


Đã thêm câu hỏi & câu trả lời này vào tài liệu mà tôi thấy khó giải quyết, để nó có thể giúp đỡ người khác. Tôi vẫn rất thích thú khi nghe về bất kỳ phương pháp nào khác, đặc biệt là những phương pháp dễ dàng hơn mà tôi đã bỏ lỡ!
Rob Moir

Câu trả lời:


11

Các thư viện Windows 7 thực sự chỉ là các tệp XML với một số phần mở rộng shell thông minh quản lý chúng. Tất cả chúng đều được gọi là [Library_Name] .l Library-ms (Ví dụ: Pictures.l Library-ms) và có thể được mở trong bất kỳ trình soạn thảo văn bản nào như notepad bằng cách kéo và thả.

Các tệp sau đó có thể được xuất bản bằng bất kỳ cơ chế thông thường nào - tập lệnh, Tùy chọn chính sách nhóm, v.v.

Có một vài điều mà tôi phát hiện ra, mà bạn nên biết:

  • XML lưu trữ thông tin về người dùng đang sử dụng tệp thư viện

  • Windows sẽ tự động cập nhật / ghi đè lên XML khi bạn nhấp đúp vào nó / thao tác với nó. Điều này đặc biệt có vấn đề với tư cách quản trị viên khi nhấp đúp sẽ khiến tệp của bạn không thể sử dụng được cho người dùng

  • Nếu bạn làm cho tệp chỉ đọc, điều này sẽ có tác dụng làm cho thư viện xuất hiện chỉ đọc, do đó ngăn người dùng lưu.

Sau một số thử nghiệm và lỗi, tôi đã phát triển một số mẫu 'trống' bằng cách sử dụng các Thư viện mặc định mà tôi sẽ đăng bên dưới.

Bạn có thể sử dụng hướng dẫn thư mục đã biết sau đây để tùy chỉnh các vị trí mặc định mới:

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

Và tôi đã tìm thấy sau đây là các tài liệu tham khảo hữu ích liên quan đến kiến ​​trúc thư viện:

http://msdn.microsoft.com/en-us/l Library / windows / desktop / dd798389 (v = vs85) .aspx http://msdn.microsoft.com/en-us/magazine/dd861346.aspx

Tuy nhiên, về cơ bản, cách tôi thấy tốt nhất để thử nghiệm là chỉ cần thực hiện các thay đổi bằng GUI và kiểm tra những gì đã thay đổi.

Các tài liệu

<?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 nhạc

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

Những bức ảnh

<?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
Đối với những người thắc mắc nơi chúng được lưu trữ, chúng có thể được tìm thấy trong%APPDATA%\Microsoft\Windows\Libraries
Agent_9191

Một bản cập nhật tốt đẹp sẽ là một cách để chỉ một thư viện để một mạng chia sẻ: \\server\%username%\documents, \\server\%username%\music, vv, trong khi nó sẽ làm việc không có vấn đề mà người dùng đăng nhập.
Joel Coel

7

Phương pháp duy nhất tôi tìm thấy là sử dụng các mức độ Powershell của Windows 7 cho các Thư viện, có sẵn từ codeplex tại đây .

Điều này có thể được sử dụng trong một tập lệnh đăng nhập (nó cần phải chạy cho mỗi người dùng, trong ngữ cảnh của họ) và nó bao gồm các phương thức để thêm và xóa các vị trí thư viện.

Mã mẫu

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.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.