เปลี่ยนพื้นหลังของเครื่อง Windows 7 โดยใช้ Registry


18

ฉันเชื่อมต่อเครื่องของฉันกับกลุ่มงาน การตั้งค่าเพื่อเปลี่ยนรูปพื้นหลังอยู่ในเครื่องเซิร์ฟเวอร์เพื่อให้เครื่องทั้งหมดจะมีรูปพื้นหลังเหมือนกัน ตอนนี้ฉันจะเปลี่ยนรูปพื้นหลังของเครื่องโดยใช้การลงทะเบียนได้อย่างไร

หลังจากอ่านคำตอบแล้ว

ฉันสร้างWall.regด้วยเนื้อหาต่อไปนี้และสร้างทางลัดในStart upโฟลเดอร์เพื่อให้ไฟล์จะถูกดำเนินการโดยอัตโนมัติ

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Control Panel\Desktop]
"Wallpaper"="C:\Users\Public\Pictures\Sample Pictures\Koala.jpg"

ฉันไม่มีอะไรเลยหรือ มันไม่ทำงาน :(


1
ลองใช้เครื่องหมายทับสองครั้งในเส้นทางวอลล์เปเปอร์
thane

คำตอบ:


9

นำทางไปยัง

แผงควบคุม \ Desktop \ HKEY_CURRENT_USER \

และเปลี่ยนค่าคีย์ของวอลล์เปเปอร์เป็นพา ธ แบบเต็มของภาพของคุณ


9
และทุกครั้งที่คุณเข้าสู่ระบบ GPO จะรีเซ็ตภาพพื้นหลังของคุณเป็นแบบดั้งเดิม
Joe Taylor

1
@JoeTaylor - ถ้าไม่ใช่แทนที่จะเปลี่ยนพา ธ คุณจะพบพา ธ และแทนที่รูปภาพด้วยรูปภาพที่คุณต้องการ แต่ใช้ชื่อเดียวกัน :)
Suamere

1
@Suamere - ซึ่งหากเป็นโฮสต์เซิร์ฟเวอร์ (ซึ่งควรเป็น) จะเป็นไปไม่ได้สำหรับผู้ใช้ทั่วไป
Joe Taylor

3

ฉันรู้ว่านี่เป็นดอกยางเก่าและ Windows 7 เป็นระบบปฏิบัติการที่ล้าสมัยอย่างรวดเร็ว แต่สำหรับผู้ใช้เป็นครั้งคราว: ฉันจัดการกับสิ่งนี้เป็นเวลาหลายปีในร้านของฉัน ฉันใกล้ชิดกับไอทีมากพอที่จะได้รับสิทธิพิเศษบางอย่างบนแล็ปท็อปของฉัน แต่ไม่ใกล้พอที่จะหยุดและทำ GPO ที่โง่ซึ่งแน่นอนว่ามีผลกับฉันเช่นกัน

ใน XP ฉันมั่นใจว่าใน Windows 7 นี่เป็นเพียงแรงบันดาลใจ: การเปลี่ยนแปลงใน Registry ประเภทนี้จะไม่มีผลจนกว่าคุณจะรีบูตระบบ! และเนื่องจากคุณพยายามหลีกเลี่ยง GPO นี้จึงเท่ากับ "ภารกิจที่เป็นไปไม่ได้" ในหลาย ๆ สถานการณ์ อย่างไรก็ตามมีวิธีบังคับให้อัปเดต Registry เพื่อนำไปใช้โดยไม่ต้องรีบูตเครื่อง ...

สิ่งที่เป็น: คุณไม่จำเป็นต้องรีบูต - คุณจำเป็นต้องล้าง cashe การตั้งค่ารีจิสทรี - ซึ่งเป็นส่วนหนึ่งของการรีบูตได้

โซลูชัน (บน XP อย่างน้อย):

@echo off
call :quiet>nul 2>&1
goto :EOF
:quiet
:: Configure Wallpaper (command prompt method works only with bmp files)
REG ADD "HKEY_CURRENT_USER\Control Panel\Desktop" /V Wallpaper /T REG_SZ /F /D "C:\WINDOWS\Web\Wallpaper1.bmp" 
REG ADD "HKCU\Control Panel\Desktop" /V WallpaperStyle /T REG_SZ /F /D 0
REG ADD "HKCU\Control Panel\Desktop" /V TileWallpaper /T REG_SZ /F /D 1
:: Make the changes effective immediately (only XP-compatible)
RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters

วิธีนี้ใช้งานได้ (ใช้งานได้) ดีสำหรับฉันบนเครื่อง XP ของฉันเคล็ดลับการเป็นบรรทัดสุดท้าย: ดำเนินการ "user32.dll, UpdatePerUserSystemParameters" ซึ่งเป็นส่วนหนึ่งของค้างคาวไฟล์ สิ่งนี้เกิดขึ้นแทน "รีบูต" :-)

ฉันใส่สิ่งนี้ลงในโฟลเดอร์ Start และเพิ่มคีย์ผสมทางลัดลงในไฟล์ bat: ด้วยวิธีนี้พีซีของฉันเริ่มต้นด้วยวอลเปเปอร์ของตัวเองและเมื่อ GPO รีเฟรชสองสามครั้งในระหว่างวันฉันกดปุ่มทางลัดและ รับมุมมองที่ต้องการกลับคืนมา (อันไหนสวยกว่าอนันต์ "หน้าจอสีดำแห่งภาวะซึมเศร้า" ซึ่งเป็นหุ้นของ บริษัท ) ;-)

ฉันยังไม่ได้แก้ไขสิ่งนี้บนแล็ปท็อปเครื่องใหม่ของฉัน (ใช้งาน Win 7) แต่ฉันเดาว่ามีใครบางคนในนั้นสามารถรับแรงบันดาลใจจากพฤติกรรม (XP) นี้และการวิจัยเพิ่มเติม


1
@Ramhound - เอาล่ะการโหวตมันเป็นผื่นเล็กน้อยถ้าคุณถามฉัน! แน่นอนฉันไม่ได้ - ไม่อย่างนั้นฉันจะพูดอย่างนั้น - และไม่ได้เขียนว่า "ฉันยังไม่ได้แก้ไขปัญหานี้ในแล็ปท็อปเครื่องใหม่ของฉัน (ใช้งาน Win 7) ได้ แต่ฉันเดาว่ามีใครบางคน (XP) พฤติกรรมและการวิจัยเพิ่มเติม " ฉันเจอหน้านี้เพื่อหาวิธีที่จะทำสิ่งนี้ในกล่อง Win 7 ของฉัน ... และหากคุณมีความอดทนเล็กน้อยคุณจะได้เห็นการอัปเดตของฉันที่จะมาต่อไป ...
Hansjp

ฉันเพิ่งลบความคิดเห็นของฉันที่จะหลีกเลี่ยงการส่ง Ping ที่ไม่จำเป็น
Ramhound

2

สำหรับบรรดาของคุณยังคงมีการจัดการกับกล่อง XP ฉันออกจากคำตอบก่อนหน้าของฉันเหมือนเดิม

อย่างไรก็ตามตอนนี้ฉันสามารถแบ่งปันวิธีการในการแก้ปัญหาในกล่อง Windows 7:

  1. อย่างที่ฉันพูดไว้ก่อนหน้านี้คุณไม่ต้องการรีบูตพีซีเพราะคุณกำลัง
    ต่อสู้กับนโยบายกลุ่มซึ่งบังคับใช้ในการรีบูต (และใน
    กรณีส่วนตัวของฉันทุกสองสามชั่วโมงในระหว่างวัน) อย่างไรก็ตามการเปลี่ยนแปลง
    รีจิสทรีต้องล้างการตั้งค่าเงินก่อนที่จะเปิด
    ใช้งาน รีบูตทำเช่นนั้น

เราต้องหาวิธีอื่นในการบรรลุเป้าหมาย: "เปลี่ยนพื้นหลังของเครื่อง a-windows-7-machine ... " - ฉันข้ามส่วน "use-registry" เพราะฉันคิดว่ามันเป็นไปไม่ได้ และตรงไปตรงมาฉันไม่คิดว่ามันเป็นแนวทางที่ถูกต้องใน Windows 7! มันเป็น XP - ตามที่ฉันได้ระบุไว้ในคำตอบก่อนหน้าของฉัน

คำวิเศษตอนนี้คือ "Themepack" - และความรู้เกี่ยวกับเวทย์มนตร์คือ: "ปฏิบัติการได้!" สิ่งที่คุณต้องการคือวิธีการดำเนินการอัตโนมัติและจัดการกับผลที่ฝังอยู่

  1. ฉันใช้ AutoHotkey รุ่น 1.1 ( http://ahkscript.org/ ) สำหรับสิ่งต่าง ๆ บนแล็ปท็อปของฉันและถ้าคุณมีสิทธิ์ที่จำเป็นสำหรับการใช้งานโปรแกรมนี้คุณก็ควรไป:
  2. (สมมติว่าคุณไม่ได้ทำสิ่งใดกับ AutoHotkey): สร้างไฟล์ txt ตั้งชื่ออะไรก็ได้ แต่ให้นามสกุลไฟล์ ".ahk" แทน ".txt" และบันทึกลงในโฟลเดอร์เริ่มต้น ("C: \ Users \ ใส่ชื่อผู้ใช้ของคุณ \ AppData \ Roaming \ Microsoft \ Windows \ Start Menu \ Programs \ Startup "ในกรณีของฉัน) ตอนนี้มันจะทำงานทุกครั้งที่เริ่มต้น

แก้ไขไฟล์โดยใช้ Notepad หรือเครื่องมือที่คล้ายกัน: แทรกบรรทัดเหล่านี้:

    ; Setting wallpaper on the desktop on Win 7 which is: Apply a Themepack!
    <^<+D::
     Run "C:\Laptop theme.themepack"  ; Apply your Themepack
     WinWait Personlige indstillinger ; Wait for the window to get focus (the appearance is mandatory on an "apply" command)
     WinClose                         ; Close the last found window
    return

โปรดทราบว่าฉันไม่เพียง แต่เรียกใช้รหัสเมื่อเริ่มต้นฉันยังแนบฮอตคีย์ (LCTRL + LSHIFT + D) ซึ่งดำเนินการส่วนนี้ของสคริปต์ตามความประสงค์

หมายเหตุบรรทัดคำสั่ง "WinWait": ระบบของฉันเป็นภาษาเดนมาร์กดังนั้นชื่อของหน้าต่างการตั้งค่าส่วนบุคคลของฉันคือ "Personlige indstillinger" คุณต้องใส่ชื่อหน้าต่างในระบบของคุณเอง อ่านไฟล์ความช่วยเหลือของ AHK ได้อย่างไรหากไม่ชัดเจนพอที่จะเดาได้ว่าจะเริ่มต้นด้วยดี

  1. ตอนนี้สิ่งที่เหลืออยู่ก็คือการปรับเปลี่ยนแล็ปท็อป Windows 7 ของคุณให้เป็นแบบส่วนบุคคลทันทีและสำหรับทุกคน (เว้นแต่ว่านโยบายกลุ่มจะป้องกันไม่ให้คุณ (ผู้ใช้) เปลี่ยนสิ่งต่าง ๆ คุณสามารถเปลี่ยนแปลงสิ่งต่าง ๆ ได้เสมอ) เมื่อคุณมีความพึงพอใจบันทึกผล Themepack บนเส้นทางที่คุณให้อยู่ในสคริปต์ (คือ "C: \ theme.themepack แล็ปท็อป") และทำ

  2. หมายเหตุ: หากคุณไม่สามารถบันทึกสิ่งใดใน "C: \" คุณสามารถใส่พวกเขาไว้ที่ใดก็ได้รวมถึงในโฟลเดอร์ผู้ใช้ส่วนบุคคลของคุณ ข้อดีของการทำเช่นนี้คือคุณเก็บสคริปต์ไว้แม้ในขณะที่แผนกไอทีกำลังเปลี่ยนแล็ปท็อปของคุณ - หากพวกเขาต้องการสำรองข้อมูลโฟลเดอร์ผู้ใช้ของคุณ รสนิยมส่วนตัวของฉันคือการทำให้สิ่งต่าง ๆ สั้นและฉันไม่ต้องการเชื่อมต่อกับเครือข่ายที่ใช้ร่วมกันในระหว่างการเริ่มต้นถ้าฉันสามารถช่วยได้ ซึ่งฉันสามารถ


1
และแน่นอน .. ความชัดเจนมักจะซ่อนอยู่ในสายตา! คุณสามารถบันทึก Themepack ในโฟลเดอร์ Startup! ... นั่นคือ "autoecuteecute เมื่อเริ่มต้น" ทั้งหมดที่คุณต้องการ ฉันเชื่อตามกฎนี้จะดำเนินการหลังจาก GPO เสมอ- อย่างน้อยก็ในระบบของฉัน ข้อเสียเปรียบเพียงอย่างเดียว: คุณต้องปิดหน้าต่างการตั้งค่าด้วยตนเองเมื่อคุณไม่ได้สคริปต์ส่วนนั้น แต่มันช่วยให้คุณประหยัดความฮือฮาของ AutoHotkey ดังนั้นฉันเดาว่ามันควรค่าแก่การพูดถึง
Hansjp

ดังนั้น ... จะสร้าง Themepack ได้อย่างไร
Emanuele Ciriachi

1
คุณไม่สามารถช่วยได้ แต่มี Windows สร้างขึ้นมาให้คุณเมื่อคุณบูทระบบปฏิบัติการ หากคุณทำการเปลี่ยนแปลงรูปภาพเดสก์ท็อป "ชุดรูปแบบที่ไม่ได้บันทึก" จะปรากฏขึ้นด้วยตนเอง สิ่งที่คุณต้องทำคือ 1) บันทึกไฟล์เพื่อรับไฟล์และ 2) คัดลอกไฟล์ไปยังตำแหน่งที่มีอยู่ หากต้องการค้นหา: คลิกขวาที่เดสก์ท็อปเลือกการตั้งค่าส่วนบุคคล
Hansjp

1

หากเซิร์ฟเวอร์ควบคุมรูปพื้นหลังของคุณผ่าน GPO คุณจะต้องรีเซ็ตรูปพื้นหลังของคุณทุกครั้งที่คุณลงชื่อเข้าใช้หรือ GPO ได้รับการอัปเดตบนเครื่อง

คุณสามารถสร้างไฟล์ reg ปรับเปลี่ยนค่าได้อย่างถูกต้องและบันทึกไว้บนเดสก์ท็อปของคุณการทำเช่นนี้ในทุกครั้งที่เข้าสู่ระบบจะทำให้วอลล์เปเปอร์ที่คุณต้องการหลังจากเข้าสู่ระบบทุกครั้ง ใช้คีย์รีจิสทรีที่ Thane ให้และส่งออกค่าที่ถูกต้อง เมื่อใดก็ตามที่คุณนำเข้าสิ่งนี้จะเป็นการแก้ไขรีจิสทรีให้เป็นค่าที่คุณต้องการ

สิ่งที่ต้องพิจารณา:

คุณกำลังทำลายนโยบายด้านไอทีของ บริษัท หรือไม่?
คุณสามารถปรับเปลี่ยนรีจิสทรีได้หรือไม่? และสร้างงานเริ่มต้นให้ทำเช่นนั้น? เช่นคุณมี Priveleges หรือไม่?
มันคุ้มค่ากับความยุ่งยากหรือไม่?


ฉันสามารถแก้ไขรีจิสทรี คุณช่วยบอกฉันเกี่ยวกับวิธีสร้างไฟล์ reg และทั้งหมดได้ไหม ?
Rauf

โปรดดูการแก้ไขของฉัน
Rauf

หากคุณเพียงนำเข้าคีย์รีจิสทรีด้วยตนเอง ie ดับเบิลคลิกที่มัน ใช้งานได้หรือไม่
Joe Taylor

ไม่มันไม่ทำงาน
Rauf

ฉันจะพิจารณาการพูดคุยกับแผนกไอทีของคุณเกี่ยวกับเรื่องนี้ มีการตั้งค่า GP จำนวนมากที่สามารถเปลี่ยน / ป้องกันผู้ใช้ไม่ให้เปลี่ยนวอลเปเปอร์ หากพวกเขาทำสิ่งนี้ด้วยเหตุผลที่คุณสามารถพบว่าตัวเองอยู่ในน้ำร้อนเพื่อไปไหนมาไหนในรีจิสตรีและเปลี่ยนมัน
โจเทย์เลอร์

1

เพียงบันทึกภาพพื้นหลัง 'โคอาล่า' ของคุณลงในไฟล์ภาพพื้นหลังเริ่มต้นที่นโยบายของคุณใช้อยู่


ไฟล์นี้อาจไม่สามารถเขียนได้ทั่วโลกและ OP ไม่ได้บอกว่าเขามีสิทธิ์ระดับผู้ดูแลระบบ
G-Man กล่าวว่า 'Reinstate Monica'

ทำงานให้ฉัน แต่คุณพูดถูกมันอาจไม่เหมาะกับเขา
MattPark

0

เพิ่งลองสิ่งนี้ เมื่อคุณคัดลอกผู้ใช้ไปยังผู้ใช้เริ่มต้นมันจะเก็บเส้นทางฮาร์ดโค้ดไปยังพื้นที่ธีมของผู้ใช้ต้นฉบับดังนั้นฉันจึงพยายามเปลี่ยนพื้นหลังผู้ใช้ดั้งเดิมเป็นพื้นที่ทั่วไป

ฉันพบว่าคุณต้องใส่แบ็กสแลชคู่ "\\" บนเส้นทางเช่น "C: \\ Users \\ ..... " มิฉะนั้นรายการ. reg จะถูกละเว้น!


0

อาจไม่ใช่คำตอบสำหรับทุกคนในทุกกรณี แต่ก็คุ้มค่าที่จะพิจารณา: คุณต้องออกจากระบบและลงชื่อเข้าใช้อีกครั้งเพื่อให้การตั้งค่ามีผล (นี่คืออย่างที่คนอื่น ๆ สังเกตไว้จะไม่ช่วยถ้าคุณต่อสู้กับ GPO เพราะมันจะทำให้มันถูกต้องทันที)

ในการตั้งค่า Win7 ของฉันฉันกำลังตั้งค่า HKEY_CURRENT_USER \ Control Panel \ Desktop \ Wallpaper ให้กับรูปภาพและจะไม่ทำอะไรกับพื้นหลังเดสก์ท็อปจริง แต่ในแผงควบคุม -> การตั้งค่าส่วนบุคคลจะมีลักษณะเหมือนการตั้งค่า สิ่งนี้ทำให้ฉันคลั่งไคล้จนฉันตระหนักว่าการออกจากระบบและกลับเข้ามาจะทำให้วอลเปเปอร์ใหม่ถูกยึด

อัปเดต 9/8: นี่ไม่ตอบคำถามของ OP เนื่องจากไม่เพียง แต่ใช้รีจีสทรี แต่จากการติดตามฉันไม่เคยพบวิธีที่น่าพอใจในการเปลี่ยนวอลล์เปเปอร์โดยใช้รีจิสตรี หากคุณสามารถเขียนและปรับใช้โค้ดบางอย่างได้ฉันพบว่าการเรียกใช้ Win32 SystemParametersInfoด้วยSPI_SETDESKWALLPAPERแฟล็กทำให้วอลล์เปเปอร์มีผลทันทีโดยไม่ต้องล็อกเอาต์ / ล็อกอิน ดูคำตอบนี้สำหรับรายละเอียด อีกครั้งมันจะไม่ช่วยถ้าคุณต่อสู้กับ GPO เพื่อควบคุมการตั้งค่านั้น


คุณพูดถึงปัญหาที่ต้องออกจากระบบของผู้ใช้เพื่อใช้การตั้งค่า แต่ถ้าคุณทำเช่นนั้น GPO จะมีผล แต่ไม่ต้องพูดถึงวิธีจัดการกับสิ่งนั้น
Ramhound

ขออภัยฉันพยายามพูดถึงคำตอบของฉันว่าสิ่งนี้มีประโยชน์เฉพาะเมื่อคุณไม่มี GPO ที่เอาชนะการตั้งค่านี้
user1454265

นอกจากนี้สิ่งนี้อาจช่วยได้หรือไม่อาจช่วยได้ในสถานการณ์ของคุณ แต่ก็คุ้มค่าที่จะติดตามต่อไป - ฉันไม่เคยพบวิธีที่น่าพอใจในการเปลี่ยนรูปพื้นหลังโดยใช้เฉพาะรีจิสทรี ฉันลงเอยด้วยการแก้ปัญหาที่ใช้การเรียก Win32 ไปยัง SystemParametersInfo ดู: stackoverflow.com/questions/1061678/…
user1454265

อัปเดตคำตอบของฉัน
user1454265

Ramhound: ฉันอัปเดตคำตอบตามที่คุณขอ แต่คุณลบความคิดเห็นของคุณและแปลงเป็น downvote เราคุยกันในแชทได้ไหม? ฉันพยายามช่วยเหลือฉันอย่างจริงใจด้วยสิ่งเล็ก ๆ น้อย ๆ ที่ฉันสามารถมีส่วนร่วมได้
user1454265

-1

ฉันรู้ว่านี่เก่า อย่างไรก็ตามฉันต้องแก้ไขปัญหานี้มากและวิธีการที่จะทำนั้นค่อนข้างลับ ๆ ล่อ ๆ

ตั้งค่ารายการรีจิสทรีให้ชี้ไปที่การตั้งค่าที่คุณต้องการจากนั้นตั้งค่าสิทธิ์ในการอนุญาตให้ทุกคนอ่าน แต่บล็อกทุกคน (รวมถึงระบบ) ไม่ให้มีสิทธิ์ในการเปลี่ยนแปลง

เมื่อ GPO ไปดำเนินการมันจะได้รับการเข้าถึงถูกปฏิเสธสำหรับการตั้งค่าเฉพาะนั้นและคุณติดอยู่กับการตั้งค่าที่ต้องการดังนั้น

หากไฟล์อยู่ในระบบโลคัลของคุณห้ามใช้ชื่อไฟล์เดียวกันเว้นแต่คุณจะใช้เล่ห์เหลี่ยมนี้กับรูปภาพจริงมิฉะนั้นนโยบายอาจเขียนทับไฟล์ของคุณ


1
บางทีฉันอาจต้องการกาแฟเพิ่ม แต่นี่ไม่ใช่สิ่งที่ตรงกันข้ามกับที่ถามหรือ
fixer1234

... และไม่ได้ให้วิธีแก้ปัญหา แต่มีคำอธิบายบางอย่าง
not2qubit
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.