উইন্ডোজ ক্রিয়েটরদের রেজিস্ট্রি মাধ্যমে নাইট লাইট আপডেট করুন


13

উইন্ডোজ 10 (প্রো) ক্রিয়েটর আপডেটে নতুন নাইট লাইট বৈশিষ্ট্যটি কীভাবে রেজিস্ট্রি দিয়ে কনফিগার করা যায়?

আমার পছন্দের কনফিগারেশন পরিচালনার সরঞ্জাম (শেফ) ব্যবহার করার সময় আমি নতুন / আপডেট হওয়া ইনস্টলেশনগুলি স্বয়ংক্রিয়ভাবে কনফিগার করতে চাই। সিসিন্টার্নস প্রসেস মনিটরের মাধ্যমে সিস্টেম পরিদর্শনটি একটি বাইনারি Dataকী গভীরভাবে আপডেট হওয়া দেখায় HKCU\Software\Microsoft\Windows\CurrentVersion\CloudStore\Cache\DefaultAccount\$$windows.data.bluelightreduction.settings\Current, তবে এটি একটি বড় REG_BINARY ব্লব এবং খুব দরকারী নয়।

নাইট লাইট বৈশিষ্ট্যটি কনফিগার করার জন্য একটি আলাদা রেজিস্ট্রি, পাওয়ারশেল বা অন্যান্য অটোমেশন বন্ধুত্বপূর্ণ পদ্ধতিতে সহায়তা সর্বাধিক প্রশংসিত হবে!


আরও ভাল ট্রেস করতে RegfromApp ব্যবহার করুন । এটি .reg ফাইল উত্পন্ন করে। সম্ভবত এটি এটিকে ডিকোড করতে পারে
جادو্যান্ড্রে 1981

@ Magandandre198 পরামর্শের জন্য ধন্যবাদ। প্রক্রিয়া মনিটর আমাকে সঠিক কী এবং মান পরিবর্তিত হচ্ছে gives সমস্যাটি হ'ল কীটি বাইনারি এবং এটি কী কীভাবে ডেটা কী তৈরি হয় তার কোনও ডিকোডিং ডকুমেন্টেশন উপলব্ধ নেই। প্রশ্নে মজাদার পথ দেওয়া, এটি এমন কোনও অংশ নাও হতে পারে যা সরাসরি সংশোধন (সম্ভবত একটি ক্যাশেড সেটিংসের অবস্থান) এর জন্য তৈরি। আমি আশা করছি যে নতুন নাইট লাইট বৈশিষ্ট্যটি পরিচালনা করার জন্য কারওর সাথে একটি লাইন রয়েছে কারণ এখনও পর্যন্ত এটি সম্পর্কে তেমন কোনও তথ্য নেই বলে মনে হচ্ছে।
ডেভিড এফ সেভেরস্কি

যেমনটি আমি বলেছি, Regfromapp ব্যবহার করুন, এটি প্রতিটি পরিবর্তনের জন্য .reg ফাইল উত্পন্ন করে।
ম্যাজিক্যান্ড্রে 1981

1
আমরা ক্রস-উদ্দেশ্য এখানে কথা হতে পারে। :) আমি কী এবং কীগুলির বিষয়বস্তুগুলি সামঞ্জস্য করা হচ্ছে তা জানি। এটি কোনও ডকুমেন্টেশন ছাড়াই কেবল একটি বিশ্রী ব্লব। আমি github.com/jaapbrasser/SharedScriptts/tree/master/Set-BlueLight খুঁজে পেয়েছি যা বৈশিষ্ট্যে পিএস ইন্টারফেস সরবরাহ করতে কিছুটা হ্যাক করে, তবে কীভাবে বিভিন্ন সেটিংস একসাথে যুক্ত করা যায় তা পরিষ্কার নয়। এই বাইনারি স্ট্রিংটি কীভাবে একসাথে রাখা হয়েছে সে সম্পর্কে আমি সত্যিই ডকুমেন্টেশন (এবং একটি ইন্টারফেস) খুঁজছি।
ডেভিড এফ সেভেরস্কি

উত্তর:


12

একগুচ্ছ পরীক্ষার সাহায্যে আমি সেই রেজিস্ট্রি মানটির ফর্ম্যাটটি কম-বেশি করে পরিচালনা করতে পেরেছি (তার বিশদগুলির জন্য নীচে দেখুন)।

আমি এই পাওয়ারশেলের স্ক্রিপ্ট তৈরি করেছি:

Function Set-BlueLightReductionSettings {
    [CmdletBinding()]
    Param (
        [Parameter(Mandatory=$true)] [ValidateRange(0, 23)] [int]$StartHour,
        [Parameter(Mandatory=$true)] [ValidateSet(0, 15, 30, 45)] [int]$StartMinutes,
        [Parameter(Mandatory=$true)] [ValidateRange(0, 23)] [int]$EndHour,
        [Parameter(Mandatory=$true)] [ValidateSet(0, 15, 30, 45)] [int]$EndMinutes,
        [Parameter(Mandatory=$true)] [bool]$Enabled,
        [Parameter(Mandatory=$true)] [ValidateRange(1200, 6500)] [int]$NightColorTemperature
    )
    $data = (2, 0, 0, 0)
    $data += [BitConverter]::GetBytes((Get-Date).ToFileTime())
    $data += (0, 0, 0, 0, 0x43, 0x42, 1, 0)
    If ($Enabled) {$data += (2, 1)}
    $data += (0xCA, 0x14, 0x0E)
    $data += $StartHour
    $data += 0x2E
    $data += $StartMinutes
    $data += (0, 0xCA, 0x1E, 0x0E)
    $data += $EndHour
    $data += 0x2E
    $data += $EndMinutes
    $data += (0, 0xCF, 0x28)
    $tempHi = [Math]::Floor($NightColorTemperature / 64)
    $tempLo = (($NightColorTemperature - ($tempHi * 64)) * 2) + 128
    $data += ($tempLo, $tempHi)
    $data += (0xCA, 0x32, 0, 0xCA, 0x3C, 0, 0)
    Set-ItemProperty -Path 'HKCU:\Software\Microsoft\Windows\CurrentVersion\CloudStore\Store\Cache\DefaultAccount\$$windows.data.bluelightreduction.settings\Current' -Name 'Data' -Value ([byte[]]$data) -Type Binary
}

এটি ব্যবহার করতে, এটি .ps1ফাইল হিসাবে সংরক্ষণ করুন এবং পাওয়ারশেল ট্যাগ উইকির স্ক্রিপ্টগুলি সক্ষম করুন বিভাগের নির্দেশাবলী অনুসরণ করুন । এরপরে আপনি স্ক্রিপ্টের বিষয়বস্তু বিন্দু-উত্সার মাধ্যমে আমদানি করতে পারেন:

. ./bluelightmanagement.ps1

এবং তারপরে এটি সরবরাহ করে এমন সেমিডলেট-মতো ফাংশনটি ব্যবহার করুন:

Set-BlueLightReductionSettings -StartHour 7 -StartMinutes 0 -EndHour 21 -EndMinutes 15 -Enabled $true -NightColorTemperature 6000

ফলাফলগুলো

কমান্ডটি চালনার সময় আপনার যদি নীল আলো কমানোর পৃষ্ঠা খোলা থাকে সেটিংস অ্যাপ্লিকেশন এমনকি তাড়াতাড়ি (রঙ স্লাইডার ব্যতীত) সমস্ত কিছু আপডেট করে।

ফর্ম্যাট

  • 4 ধ্রুবক বাইট - আপাতদৃষ্টিতে সমস্ত CloudStoreমানগুলির মধ্যে একটি স্বাক্ষর
  • 64৪-বিট FILETIMEমান হিসাবে সেটিংয়ের শেষ-সংশোধিত সময় (৮ বাইট, ছোট এন্ডিয়ান)
  • 8 আরও ধ্রুব বাইট
  • বাইট 2তারপর 1যদি নীল আলো হ্রাস বৈশিষ্ট্যটি সক্ষম অবস্থায় থাকবে, শুধু যদি এটি অক্ষম চলে গেছে
  • 3 আরও ধ্রুব বাইট
  • শুরুর সময়ের ঘন্টা (1 বাইট)
  • 1 ধ্রুব বাইট
  • শুরুর সময়ের মিনিট (1 বাইট)
  • 4 ধ্রুব বাইট
  • শেষ সময়ের ঘন্টা (1 বাইট)
  • 1 ধ্রুব বাইট
  • শেষ সময়ের মিনিট (1 বাইট)
  • 3 ধ্রুব বাইট
  • কিছু অদ্ভুত বাইনারি গণিতের পরে কেলভিনের রাতের সময়ের রঙের তাপমাত্রা (2 বাইট)
  • 7 ধ্রুব বাইট

রঙের তাপমাত্রা অল্প এরিয়ানে দুটি বাইট হিসাবে সংরক্ষণ করা হয়। উচ্চ-মান এক হ'ল তাপমাত্রাকে by৪ দ্বারা বিভক্ত করার ফলাফলের পূর্ণসংখ্যার অংশ- এবং লো বাইট এবং 128 এর মধ্যে দুটি পার্থক্য রেখে দুটি ভাগ করলে আপনি যা পান তা যুক্ত করুন।


আমি কেবল রাতের আলোতে টগল করার জন্য একটি স্ক্রিপ্ট লেখার চেষ্টা করছি। যদি আমি ভুল না হয়ে থাকি তবে 20 এবং 21 এর বাইটগুলি বৈশিষ্ট্যটি চালু আছে কিনা তা নির্দেশ করতে হবে (কমপক্ষে 4 + 8 + 8 = 20 থেকে আপনার বিবরণ অনুসারে) তবে যখন আমি রেজিডিট ব্যবহার করে রেজিস্ট্রি এন্ট্রিটি দেখি তখন আমি করি না বাইট 21 পরিবর্তন দেখুন, আমি এই বিষয়ে কোনও পরিবর্তন দেখতে পাচ্ছি না। আমি নিশ্চিত করেছি যে আমি F5 দিয়ে রিজেডিট উইন্ডোটি রিফ্রেশ করেছি এবং আমি ইউআই থেকে নাইট লাইট বৈশিষ্ট্যটি টগল করার পরেও এটি পুনরায় চালু করেছি। কি চলছে সে সম্পর্কে আপনার ধারণা আছে?
গাবাইক 1

1
আমি নীড়সোফট nirsoft.net/articles/find_modified_Time_registry_key.html থেকে এই ইউটিলিটিটি ব্যবহার করে এটিও পেয়েছি যে, আপনি যে রেজিস্ট্রি কীটি নির্দিষ্ট করেছেন সেটি নাইট লাইট বৈশিষ্ট্যটি সক্রিয় ও নিষ্ক্রিয় করার সময় মোটেও পরিবর্তন করা হচ্ছে না। মাইক্রোসফ্ট সম্ভবত শেষ আপডেটে এটি পরিবর্তন করেছে?
গাবিক 1

1
@ গাবাইক 1 এই রেজিস্ট্রি মানটি এক ধরণের অদ্ভুত যে এর বিন্যাসটি অনেক পরিবর্তন করে; আমি বর্ণিত ফর্ম্যাটটি কেবলমাত্র একটি যা কার্যকরভাবে কেবল একটাই নয়। আমি এই মানটি থেকে অবিচ্ছিন্নভাবে ডেটা পড়ার কোনও উপায় জানি না, তবে আমি উইন্ডোজ 10 1709 এ টেস্ট করেছি এবং সেটিংসটি এখনও কাজ করে সেট করতে এই স্ক্রিপ্টটি ব্যবহার করে।
বেন এন

নেট এ লিখতে, আমি আসলে শিডিউল ব্যবহার করতে পেলাম (বনাম আপনার কোড, যা সূর্যোদয় / সূর্যাস্ত দ্বারা করা মনে হয়) আমাকে সিএ 14 0 ই এর ঠিক আগে 0xC2,0x0A, 0x00 যোগ করতে হয়েছিল had তারপরে এটি ট্রিগার করে এবং এটি ঘন্টা ভিত্তিক সেট করে। অন্যথায় এটি কাজ করে। উপর 1709.
Mgamerz

1
আজকের হিসাবে, শেষ আপডেট, এটি আর কাজ করে না। পরিবর্তিত রেজিস্ট্রি কীটি \Software\Microsoft\Windows\CurrentVersion\CloudStore\Store\DefaultAccount\Current\default$windows.data.bluelightreduction.settings\windows.data.bluelightreduction.settings\Dataএবং দু: খজনকভাবে বাইনারি বিন্যাসটি একই নয়।
জুলিয়েন__

2

বেশ কয়েক ঘন্টা পরীক্ষা-নিরীক্ষা এবং
ভয়েলা: উইন 10 1903-তে নাইট লাইট কীভাবে চালু / বন্ধ করা যায়

রেজিস্ট্রি কীটি হ'ল :

HKCU\Software\Microsoft\Windows\CurrentVersion\CloudStore\Store\DefaultAccount\Current\default$windows.data.bluelightreduction.bluelightreductionstate\windows.data.bluelightreduction.bluelightreductionstate\

মান নাম : তথ্য

নাইট লাইট সক্ষম করতে :

  1. 24 এবং 25 সূচকে যথাক্রমে ডেটাতে "10" এবং "00" বাইট যুক্ত করুন যাতে সমস্ত ডেটার দৈর্ঘ্য বৃদ্ধি পায় (বিদ্যমান মান পরিবর্তন করবেন না, কেবল আরও দুটি বাইট যুক্ত করুন)
  2. 11 বা 12 সূচকগুলিতে 1 দ্বারা বর্ধনের মান (উদাহরণস্বরূপ: এটি যদি এখনকার তুলনায় এফএফ 01 হত তবে এটি যথাক্রমে 00 02 হওয়া উচিত) আসলে এটি এখানে সময় বলে মনে হচ্ছে এবং এটি 8 বাইটে অল্প ইন্ডিয়ান ফর্ম্যাটে লেখা হয়েছে, সুতরাং আপনার প্রয়োজন হবে এছাড়াও 13, 14, 15, 16, 17 এবং 18 সূচকগুলি যদি আপনি এটি সঠিকভাবে করতে চান।

নাইট লাইট অক্ষম করতে :

  1. 24 এবং 25 সূচকে যথাক্রমে ডেটা থেকে "10" এবং "00" সরিয়ে ফেলুন যাতে সমস্ত ডেটার দৈর্ঘ্য হ্রাস পায়
  2. 11 বা 12 সূচকে বৃদ্ধির মান 1 (উদাহরণস্বরূপ: এটি যদি এখনের তুলনায় এফএফ 01 হত তবে এটি যথাক্রমে 00 02 হওয়া উচিত)

আমার প্রোগ্রামটির জন্য আমাকে কেবল নাইট লাইট চালু / বন্ধ করা দরকার ছিল, তাই দুর্ভাগ্যক্রমে অন্য সমস্ত বিকল্পের জন্য এখনও গবেষণা প্রয়োজন। তবে মনে হয় কাজ করার জন্য অন্যান্য সমস্ত টুইটের মূল বিকল্পটি (তাপমাত্রা এবং সময়সূচি পরিবর্তনের মতো) সঠিকভাবে সময় বাড়ানো। এই মোডগুলি প্রতিবেশী রেজিস্ট্রি কী উইন্ডোজ.ডেটা.ব্লুয়েলাইট্রেডাকশন.সেটেটিংয়ের অন্য ডেটা মানে করা দরকার।


কোনও সুযোগেই এটিকে সক্ষম-অক্ষম করার জন্য আপনার কাছে কোনও স্ক্রিপ্ট রয়েছে বলে মনে হয়?
রূপান্তর

কোন। আমি সি তে একটি ছোট প্রোগ্রাম লিখেছি
hgrev

আপনি যদি কোনও লিঙ্ক পোস্ট করতে পারেন তবে এখনও (আমার পক্ষে কমপক্ষে) কার্যকর হবে। আমি সি / সি ++
এ্যাটামোরফোসিস

আপনি কি একটি কোড বা এক্সি ফাইল চান?
hgrev

1
এখানে উত্স কোড এবং সম্পাদনযোগ্য: github.com/inamozov/ ডিসপ্লেটেষ্ট
hgrev
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.