Hello there,
I'm a fan of the product, but I struggling here and need some help. After hours of going through the document and testing settings, I can't quite get hyperlink text to display properly. See the attached image.
Any suggestions to what I might be doing wrong?
Here's a snippet of the xml
# Sample configuration file
# See the manual for a full description of all options
[options]
# size and position
top=1
right=1
width=520
transparency=100
contextmenu=0
allowdrag=0
nav=0
font-quality=3
auto-scale=1
# font
font-face=Verdana
font-size=13
line-spacing=2
# logging
log=desktopinfo.log
log-level=error
[screen-saver]
font-face=Verdana
font-size=13
#centerv=1
#centerh=1
[text]
noresults=n/a
error=[error]
###
### omitted the other lines in-between unless needed
###
[items]
# page 1
COMMENT=color:ffffff,text:,font-size:50%
HOST=font-size:100%,color:ffffff
# info and support hyperlink in bottom right corner
FONT-FACE=Verdana
COLOR=%silver%
HYPERLINK=text:Ticket,align:l,style:b,wide:1,font-rtl:1,font-size:13,color:%white%,display:Open IT Request,uri: removed link
HYPERLINK=text:Phone,align:l,style:b,wide:1,font-rtl:1,font-size:13,color:%white%,display:Phone IT Support,uri:sip:service@service.com
CONTROL=text:Search,type:1,display:Google,button-color:ff0000,hover-color:eeeeee,uri:www.google.com
what are you hoping to see?
the lower 3 links the text is not readable for
- Open IT Request
- Phone IT
hover over and actual functionality is good, but not if the users cannot make out the text 🙂
Ah I see why you are asking about the scaling. So if there is any monitor with scaling with 150% at start up, this does not display well. Wth my setup:
- laptop screen 1080P 150%
- first external monitor 1080P 100% (Primary)
- second external monitor 1080P 100%
This even occurs if the primary monitor is 100%, or later changing all the monitors to 100%. When I close and restart the DesktopInfo64.exe, this displays properly. So I can't quite pin what event or circumstances make the hyperlinks appear too huge and the text cut off.
I guess it's good to know that I'm probably not that bad at following documentation 🙂
I created an account here just to reply to this thread as I am new to this product and love it and I have run into this same problem. I've tried and tried to resolve it and get the hyperlink to line up properly as all the other text does. If an issue is found to resolve I'd be very interested to know and I'll also be diving deeper into the forum as I do see some other posts along this topic.
Initially, on HIGH dpi displays the hyperlink would slide way to the right with about 2/3rds off screen. Changin the compatibility mode on the .exe fixed that up but now the hyperlink floats left depending on the scaling on the monitor. 100% looks perfect, anything else and it starts to drift but at least it's still functional... just doesn't look as good.
Thank you for creating this it is wonderful!
Hi,
The answer to your problem is here
Problem with scale and layout set to 150% – Desktop Info – Discussion (delahoy.com)
I've added these lines, and it works 100% of the time
[items] BEGIN-ONLOAD MONITOR=set:Hres=%4 MONITOR=set:Vres=%5 MONITOR=set:PriMon=%6 MONITOR=set:DPI=%7 # Settings for 150% DPI IF=value1:%DPI%,comp:eq,value2:144,eval:8 width=440 font-size=12 SET=key:ControlFontSize,value:80% SET=key:HNLeft,value:150 SET=key:ToolsLeft,value:10 SET=key:Tools2Left,value:218 SET=key:ToolsWidth,value:200 SET=key:BRNWidth,value:226 # Settings for 125% DPI IF=value1:%DPI%,comp:eq,value2:120,eval:8 width=480 font-size=14 SET=key:ControlFontSize,value:60% SET=key:HNLeft,value:160 SET=key:ToolsLeft,value:20 SET=key:Tools2Left,value:240 SET=key:ToolsWidth,value:200 SET=key:BRNWidth,value:226 # Settings for 100% DPI IF=value1:%DPI%,comp:eq,value2:96,eval:8 width=350 font-size=10 SET=key:ControlFontSize,value:100% SET=key:HNLeft,value:125 SET=key:ToolsLeft,value:12 SET=key:Tools2Left,value:180 SET=key:ToolsWidth,value:140 SET=key:BRNWidth,value:150 # Settings for 2560 hres and 100% DPI #IF=value1:%DPI%,comp:eq,value2:96,eval:7 (if using place right beforefont-size setting) IF=value1:%Hres%,comp:eq,value2:2560,eval:8 WIDTH=380 font-size=11 SET=key:ControlFontSize,value:90% SET=key:HNLeft,value:140 SET=key:ToolsLeft,value:20 SET=key:Tools2Left,value:180 SET=key:ToolsWidth,value:140 SET=key:BRNWidth,value:140 # Settings for 2880 hres and 200% DPI IF=value1:%Hres%,comp:eq,value2:2880 WIDTH=700 IF=value1:%DPI%,comp:eq,value2:192,eval:7 font-size=20 SET=key:ControlFontSize,value:60% SET=key:HNLeft,value:210 SET=key:ToolsLeft,value:20 SET=key:Tools2Left,value:320 SET=key:ToolsWidth,value:260 SET=key:BRNWidth,value:280 # Settings for 3000 hres and 200% DPI IF=value1:%Hres%,comp:eq,value2:3000 WIDTH=750 IF=value1:%DPI%,comp:eq,value2:192,eval:7 font-size=20 SET=key:ControlFontSize,value:55% SET=key:HNLeft,value:270 SET=key:HNWide,value:200 SET=key:ToolsLeft,value:20 SET=key:Tools2Left,value:320 SET=key:ToolsWidth,value:280 SET=key:BRNWidth,value:280 # Settings for 3840 hres and 200% DPI IF=value1:%Hres%,comp:eq,value2:3840 WIDTH=750 IF=value1:%DPI%,comp:eq,value2:192,eval:7 font-size=20 SET=key:ControlFontSize,value:55% SET=key:HNLeft,value:270 SET=key:ToolsLeft,value:20 SET=key:Tools2Left,value:320 SET=key:ToolsWidth,value:280 SET=key:BRNWidth,value:280 END-ONLOAD # colors
I'm also having the issue with versions above 3.10.2 and odd behavior with the CONTROL option. I tried using the BEGIN-ONLOAD options as suggested by Tof0006 however they didn't fix the issue for me.
Attached is a snippet screenshot of 3.10.2 vs 3.15.0 and 3150 w/ the BEGIN-ONLOAD suggestion.
Monitors are 4k (3840 x 2160) with 125% Scaling 🙁
I presume it has something to do with scaling. I've been adjusting that hyperlink control measurement for a while and haven't found the right combination that works for all situations. Furthermore I can't reproduce this situation. I'll need your config.
The following is a snippet of what is working in 3.10.2 but doesn't in 3.15.0. I also tried adding the BEGIN-ONLOAD from above but have NOT included that below here:
Not sure if you need the WHOLE ini or just a snipped is ok?
# Last config update: 2023-SEP-22 (Update from 3.7.0 to 3.10.2 and new PC)
# Desktop Info: 3.10.2
[options]
# size and position
auto-scale=0
monitor-mode=1
top=20
right=15
width=675
font-size=15
font-face=Arial
# logging
log=desktopinfo.log
log-level=debugonerror
# misc
ignore-setting-change=1
#[screen-saver]
#font-size=16
#centerv=1
#centerh=1
#formcolor=501020
[text]
noresults=<n/a>
error=[error]
null-result=<null>
unknown=Unknown
executing=<executing>
menu-export=Export
menu-reload=Reload
menu-configuration=Edit Configuration
menu-log=Open Log File
menu-manual=Read Manual
menu-about=About Desktop Info
menu-quit=Quit
[items]
# colors
set White = #ffffff
set Grey = #909090
set Cyan = #00ffff
set Magenta = #ff00ff
set Green = #00ff00
set Orange = #ffd000
set Yellow = #ffff00
set Silver = #d0d0d0
set Blue = #0000f0
set Red = #ff0000
set DarkGrey = #a0a0a0
set LightGrey = #cccccc
set Purple = #bb00bb
# battery status lookup table
set battery1 = Disconnected
set battery2 = Connected
set battery3 = Fully Charged
set battery<null> = Not In Use
# Check for resolution for proper sizing :(
#BEGIN-ONLOAD
#MONITOR=set:dpi,hidden:1,display:%7
#IF=value1:%dpi%,value2:96,comp:gt
#FONT-SIZE=15
#IF=value1:%dpi%,value2:96,comp:gt
#width=675
#END-ONLOAD
#COMMENT=text:DPI: %dpi%
# global items
NAV=global:-1
# page 1 - date/time
PAGE=1
PAGE-TITLE=Home Page
COLOR=%DarkGrey%
COMMENT=color:%white%,style:bu,,text:Desktop Info (3.10.2)
USER=set:username,hidden:1
HOST=text:Host/User,display:%1/%username%
DATETIME=interval:10,display:%1[ddd] %3[mmm] %2[1.0d]\, %4[yyyy] %5[1.0a]:%6[2.0d]:%7[2.0d] %5[2.0p]
#DATETIME=interval:10,row-text:New York,display:%9 %10,offset:-240
WMI=interval:60,hide-no-result:1,id:battery,text:Battery,alarms:(%15 le 40 %red%),namespace:root\cimv2,query:Win32_Battery,display:%EstimatedChargeRemaining%% (%battery%BatteryStatus%%)
UPTIME=interval:60,display:%1 days %2 hrs %3 mins
# page 1 - cpu
CORETEMP=interval:2,hide-no-result:1,\
chart:line max:100 series1:1 color1:%LightGrey% height:2, \
alarms:(%1 ge 60 %yellow%)(%1 ge 80 %red%), display:%1%2 (%5)
CPU=interval:2,background-interval:10,\
chart:line max:100 series1:1 color1:%green% series2:2 color2:%purple% series3:%3 color3:%red% height:2, \
alarms:(%1 ge 80 %red%)(%2 ge 40 %red%)(%3 ge 20 %orange%),\
display:Tot: %1[2.0f]%\, Krnl: %2[2.0f]%\, Queue: %3|Processes: %4\, Threads: %5
# page 1 - top processes
COMMENT=color:%LightGrey%,style:bu,text:Top Processes
TOPPROCESSCPU=interval:3,,text:Top Cpu,display:%1 (pid:%2) %3[1.1f]%
TOPPROCESSMEM=interval:10,,text:Top Memory,display:%1 (pid:%2) %3[1.1b]B
TOPPROCESSPF=interval:5,text:Page Faults,display:%1 (pid:%2) %3 faults
# page 1 - memory
COMMENT=color:%LightGrey%,style:bu,text:Memory
PHYSICALRAM=interval:2,background-interval:10,\
chart:line max:100 series1:3 color1:%green% height:2,\
alarms:(%3 ge 80 %red%),display:%1[3.1b]B / %2[3.1b]B (%3% used)
PAGEFAULTS=interval:5,,alarms:(%5 le 80 2222c0),hide-no-result:1,display:Tot: %1\, Hrd: %2\, Hit: %5%
# page 1 - network
COMMENT=color:%LightGrey%,style:bu,text:Network
NETWORKINTERFACES=interval:30,operstatus:1,iftype:6 71,friendlyfilter:-exc-switch,display:%2: %8 / %10
WMI=interval:2,background-interval:10,id:network, hide-no-result:1,\
chart:line height:3 scale:log max:23 min:-23 series1:%1 color1:%green% series2:{{Neg(%2)}} color2:%purple%,\
alarms:(%1 ge {{%CurrentBandwidth%/8*95/100}} 2222ee)(%2 ge {{%CurrentBandwidth%/8*95/100}} 0000ff),\
row-text:Eth Traffic,\
namespace:root\cimv2,query:Win32_PerfFormattedData_Tcpip_NetworkInterface where Name like "%Ethernet%" and CurrentBandwidth>0,display:R: %BytesReceivedPersec%[3.1b]Bps\, S: %BytesSentPersec%[3.1b]Bps\, B: {{%CurrentBandwidth%}}[1.0B]Bps
# WMI=interval:2,background-interval:10,id:network, hide-no-result:1,\
# chart:line height:3 scale:log max:23 min:-23 series1:%1 color1:%green% series2:{{Neg(%2)}} height:2 color2:%purple%,\
# alarms:(%1 ge {{%CurrentBandwidth%/8*95/100}} 2222ee)(%2 ge {{%CurrentBandwidth%/8*95/100}} 0000ff),\
# row-text:Wi-Fi Traffic,\
# namespace:root\cimv2,query:Win32_PerfFormattedData_Tcpip_NetworkInterface where Name like "%Wi-Fi%" and CurrentBandwidth>0,display:R: %BytesReceivedPersec%[3.1b]Bps\, S: %BytesSentPersec%[3.1b]Bps\, B: {{%CurrentBandwidth%}}[1.0B]Bps
WMI=interval:300,background-interval:60,id:latency,,alarms:(%11 ge 50 0088f0),text:Network Latency, namespace:root\cimv2,query:Win32_PingStatus where address='google.ca',display:%ResponseTime%ms (google.ca)
WMI=interval:300,background-interval:60,id:latency,,alarms:(%11 ge 50 0088f0),text:Network Latency, namespace:root\cimv2,query:Win32_PingStatus where address='google.com',display:%ResponseTime%ms (google.com)
HTTPGET=interval:600,text:External ipv4,source: removed link
COMMENT=font-size:50%,text:
CONTROL=type:1,font-size:80%,color:%LightGrey%,text:,display:Network Connections,uri:%SystemRoot%\System32\control.exe,args:ncpa.cpl
# page 1 - disks
COMMENT=color:%LightGrey%,style:bu,text:Fixed Disks
LOGICALDRIVES=interval:5,diskio:1,,\
chart:bar max:100 series1:7 threshold:75,\
alarms:(%11 ge 10000000 0000f0)(%13 ge 10000000 0000f0)(%7 ge 90 0070f0),\
row-text:Drive %1: (%2)| %3,display:%6[1.0B]B / %5[1.0B]B (%7[1.1f]% used)|%chart%| r: %11[1.1B]B/s\, w: %13[1.1B]B/s\, q: %17\, i: %19%| avg read: {{%15*1000}}[1.2f]ms\, write: {{%16*1000}}[1.2f]ms
It is absolutely a scaling issue. Here is my config(s) and particular situation. I am currently "trying to work around this scaling problem" by using a custom vbs file that will read the computers scaling setting (via startup script) modify the desktopinfo.ini accordingly, log the results to a file for review then launch DesktopInfo32.exe.
Here is the .vbs
Set WshShell = CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
' Path to the Desktop Info INI file
iniPath = "C:\DesktopInfo\desktopinfo.ini"
' Path to the log file
logFilePath = "C:\DesktopInfo\scaling_log.txt"
' Function to read the scaling factor
Function GetScalingFactor()
Dim scalingFactor
scalingFactor = WshShell.RegRead("HKEY_CURRENT_USER\Control Panel\Desktop\WindowMetrics\AppliedDPI")
GetScalingFactor = scalingFactor / 96 * 100 ' Convert DPI to percentage
End Function
' Read the current scaling factor
scalingFactor = GetScalingFactor()
' Read the current log file content
Dim logEntries
If fso.FileExists(logFilePath) Then
Set logFile = fso.OpenTextFile(logFilePath, 1)
logEntries = Split(logFile.ReadAll(), vbCrLf)
logFile.Close()
Else
logEntries = Array()
End If
' Prepend the new log entry
ReDim Preserve logEntries(UBound(logEntries) + 1)
For i = UBound(logEntries) To 1 Step -1
logEntries(i) = logEntries(i - 1)
Next
logEntries(0) = "Detected scaling factor: " & scalingFactor & " at " & Now
' Keep only the last 10 entries
If UBound(logEntries) > 9 Then
ReDim Preserve logEntries(9)
End If
' Write back the log entries
Set logFile = fso.OpenTextFile(logFilePath, 2, True)
logFile.Write Join(logEntries, vbCrLf)
logFile.Close()
' Load the INI file content
Set iniFile = fso.OpenTextFile(iniPath, 1)
iniContent = iniFile.ReadAll()
iniFile.Close()
' Adjust the hyperlink position and font size based on the scaling factor
Select Case scalingFactor
Case 125
iniContent = Replace(iniContent, "CONTROL=type:1,xr:50,yb:48,align:r,style:b,font-size:12", "CONTROL=type:1,xr:90,yb:48,align:r,style:b,font-size:10")
Case 150
iniContent = Replace(iniContent, "CONTROL=type:1,xr:50,yb:48,align:r,style:b,font-size:12", "CONTROL=type:1,xr:100,yb:48,align:r,style:b,font-size:8")
Case 175
iniContent = Replace(iniContent, "CONTROL=type:1,xr:50,yb:48,align:r,style:b,font-size:12", "CONTROL=type:1,xr:116,yb:48,align:r,style:b,font-size:7")
Case 200
iniContent = Replace(iniContent, "CONTROL=type:1,xr:50,yb:48,align:r,style:b,font-size:12", "CONTROL=type:1,xr:131,yb:48,align:r,style:b,font-size:6")
Case Else
iniContent = Replace(iniContent, "CONTROL=type:1,xr:50,yb:48,align:r,style:b,font-size:12", "CONTROL=type:1,xr:50,yb:48,align:r,style:b,font-size:12")
End Select
' Save the updated INI file content
Set iniFile = fso.OpenTextFile(iniPath, 2)
iniFile.Write iniContent
iniFile.Close()
' Change the directory
WshShell.CurrentDirectory = "C:\DesktopInfo\"
' Run the command
WshShell.Run "DesktopInfo32.exe", 0
Set WshShell = Nothing
Set fso = Nothing
This "seems to work" pretty well... actually it's a huge improvement but I have some desktops I either don't have the right scale set up and configured (I tried to hit the main ones) or they aren't reporting correctly and the hyper link is just a bit off. The other issue is that since this is a registry key it's reading to find the scaling it doesn't adjust dynamically. So, if a sales person is at their desk working, then goes to do a presentation the desktop info gets all kinds of messed up and doesn't look all that professional. I have another script for them to restart destkop info but regardless it will still read the old scaling. Thats kind of the worst of it and is really not that big of a deal. This work around has allowed this to work well company wide BUT my OCD kicks in when things just don't line up perfectly as all the other text does (dynamically) through any change. Having the URL on desktop info is absolutely worth it though as it has dramatically increased compliance in getting people to email their IT support requests via that link (and provide some details to us).
Here is my desktopinfo.ini file - pretty minimal
# Desktop Info by Glenn Delahoy
# This demonstrates how you might set up a corporate machine using absolute positioning
# Desktop Info takes up the entire monitor by setting width and height to 0
# You can then position the logo anywhere on the screen
# And some basic support info and a quick hyperlink anywhere else on the screen.
[options]
top=0
left=0
width=0
height=0
contextmenu=0
allowdrag=0
[items]
# info and support hyperlink in bottom right corner
FONT-FACE=Segoe UI
FONT-SIZE=8
# SET VARIABLES
HOST=set:hostname,onload:1,hidden:1
BOOTTIME=set:boottime,onload:1,hidden:1
USER=set:username,onload:1,hidden:1
# END VARIABLES
IMAGE=xr:50,yb:150,align:r,file:alwin.png
COMMENT=xr:50,yb:122,align:r,style:b,font-size:15,interval:5,display:Host Name: %hostname%
COMMENT=xr:50,yb:92,align:r,interval:5,font-size:12,display:Boot Time: %boottime%
COMMENT=xr:50,yb:70,align:r,font-size:12,display:User Name: %username%
CONTROL=type:1,xr:50,yb:48,align:r,style:b,font-size:12,display:email@domain.com,uri:mailto:email@domain.com?body=%0D%0A%0D%0AHost%20Name:%20%hostname%%0D%0ABoot%20Time:%20%boottime%%0D%0AUser%20Name:%20%username%
Did you know you can get the scaling from the MONITOR item?
Try out v3.15.2 and see if the scaling is working by only using auto-scale and no work-arounds.