View Full Version : Mortscript: How to set backlight?
Brevi
9th January 2008, 01:33 PM
Hi!
How can I set the backlight brightness on my Kaiser using mortscript?
I tried the SetBacklight(10, 10) command and also the commands
RegWriteDword ("HKCU", "ControlPanel\Backlight", "Brightness", 10)
RegWriteDword ("HKCU", "ControlPanel\Backlight", "ACBrightness", 10)
If I check in ControlPanel, only the slider that is not in use is changed.
So if I am on Battery power, only the slider for AC power is changed and vice versa.
I need to set the backlight to full (10) and half (5) when my bt headset connects.
Thanks a lot!!
This is the script:
RunCheck = 0
Application = "\Windows\AudioManager.exe"
WindowName = "Audio Manager"
While (1)
HandsFreeState = RegRead("HKLM", "System\State\Hardware", "Handsfree")
If (HandsFreeState = 1 && RunCheck = 0)
ToggleDisplay(1)
Run (Application)
#RegWriteDword ("HKCU", "ControlPanel\Backlight", "Brightness", 10)
#RegWriteDword ("HKCU", "ControlPanel\Backlight", "ACBrightness", 10)
SetBacklight(10,10)
SetVolume(255)
RunCheck = 1
EndIf
If (HandsFreeState = 0 && RunCheck = 1)
If (wndExists (WindowName))
Close(WindowName)
EndIf
#RegWriteDword ("HKCU", "ControlPanel\Backlight", "Brightness", 5)
#RegWriteDword ("HKCU", "ControlPanel\Backlight", "ACBrightness", 5)
SetBacklight(5,5)
SetVolume(150)
ToggleDisplay(0)
Vibrate(50)
RunCheck = 0
EndIf
Sleep (1000)
EndWhile
danielherrero
9th January 2008, 02:54 PM
You cant do it using mortscript, on Kaiser and newer HTC devices.
HTC has changed the standard way to manage the backlight. It was done (in older devices) changing the registry and signaling a Windows Event. Now you must invoke some hidden functions of HTCUtil.dll. Unfortunatelly they are undocumented and Its not easy althought the name of the calls are clear. I am watching it right now to let CommMgrPro manage backlight on kaiser. If you unassamble backlight.exe you will see how Its done. But not easy....:o
Dani
pi3ch
9th January 2008, 03:00 PM
When I got this problem on my PDA (Gsmart I) I found that there are another registry keys for backlight setting I found them on HKLM>SOFTWARE>GigabyeCM>LCDBacklight.
after changing this value with mortscript I run
SetBacklight(10,10)
command then my back light changed.
I wish this comment helps you.
Brevi
9th January 2008, 06:23 PM
Thanks for your replies!
Too bad mortscript can't manage backlight on the kaiser.
I use the kaiser in my car a lot and am looking for a way to control the backlight by time of day. So its dimmed at night and full brightness at daytime.
Best would be via a program and command line parameter so I can integrate it into my script,
which launches/exits the audio manager when my car bluetooth stereo/handsfree is connected.
Unfortunately I am no developer and don't know how to write a program like this.
LightningDammitt
9th January 2008, 08:32 PM
There is an application called PhoneAlarm that will do exactly what you are trying to do. I use it for this purpose on my Cingular 8525 (HTC Tytn).
Sets MANY parameters on the phone by profile and/or time of day. There are lots of skins to minimize or maximize the screen footprint...
Hope that helps.
danielherrero
9th January 2008, 10:00 PM
There is an application called PhoneAlarm that will do exactly what you are trying to do. I use it for this purpose on my Cingular 8525 (HTC Tytn).
Sets MANY parameters on the phone by profile and/or time of day. There are lots of skins to minimize or maximize the screen footprint...
Hope that helps.
Yes, with Tynt. CommMgrPro and many other programs does it too. The problem is HTC Kaiser (Tilt). HTC uses a new system. Classic ways used by many program doesnt work in kaiser
Brevi
10th January 2008, 12:20 AM
There is an application called PhoneAlarm that will do exactly what you are trying to do. I use it for this purpose on my Cingular 8525 (HTC Tytn).
Sets MANY parameters on the phone by profile and/or time of day. There are lots of skins to minimize or maximize the screen footprint...
Hope that helps.
Thank you for pointing out PhoneAlarm. I have been using PhoneAlarm for a couple of years now and like it very much. But I try to avoid it by doing what I need with Mortscript, because PhoneAlarm really slows down my Kaiser and has some issues with adjusting volume and sometimes switches power of phone when it should switch wifi.
ChrisDeBug
24th March 2010, 12:51 PM
After I spent some time disassembling backlight.exe, I found some usefull information here:
jianwu.spaces.live.com/blog/cns!C80015801668BB53!233.entry?ccr=9532#comment
It saved me a lot of time, as the program I was writing started working fine in minutes.
The problem with the backllight control seems to be common for newer HTC models - mine is Polaris with WM65X from pacrvalho.
ray_man
24th March 2010, 11:13 PM
Hello everybody!
Who can write a programm using the following
for .NET users (C#, can easily be translated on VB.NET), here are the calling functions :
[DllImport("HTCUtil.dll")]
private static extern int HTCUtilGetOnPowerBrightnessLevel(ref int pValue);
[DllImport("HTCUtil.dll")]
private static extern int HTCUtilGetOnBatteryBrightnessLevel(ref int pValue);
[DllImport("HTCUtil.dll")]
private static extern int HTCUtilSetOnPowerBrightnessLevel(ref int pValue);
[DllImport("HTCUtil.dll")]
private static extern int HTCUtilSetOnBatteryBrightnessLevel(ref int pValue);
[DllImport("HTCUtil.dll")]
private static extern int HTCUtilGetBacklightMinBrightness(ref int pValue);
[DllImport("HTCUtil.dll")]
private static extern int HTCUtilGetBacklightMaxBrightness(ref int pValue);
In program I need the next parameters:
-g (Set somewhere in registry the value of current brighteness level. For example:
HKCU\Software\MyBrightness\OnPower=80,
HKCU\Software\MyBrightness\OnBattery=20)
-p Value (Set OnPower brightness level and set in registry
HKCU\Software\MyBrightness\OnPower=Value)
-b Value (Set OnBattery brightness level and set in registry
HKCU\Software\MyBrightness\OnBattery =Value)
-pr (Set OnPower and OnBattery brightness level in previos state if it's possible)
Thank you beforehand.
vBulletin® v3.8.7, Copyright ©2000-2012, vBulletin Solutions, Inc.