I forgot to write my environment.
Yes, I wanted to use .NET 4.0 build for compatibility among Windows XP, 7 and 10.
(PC1)
OS: Windows 10 Pro 64bit 21H2
Tcl/Tk: BAWT Tcl 8.6.4 Batteries Included (32 bit)
Eagle/Garuda: Beta 49
(PC2)
OS: Windows 7 Professional SP1 32bit
Tcl/Tk: ActiveTcl 8.6.4.1 32bit
Eagle/Garuda: Beta 50
This is the shortest script.
In both PCs, before doing automation work, the script raises an exception.
object or type "ClientSettings" not found
```tcl
set exehome [pwd]
set EAGLE_DLL [file join $::exehome Eagle.dll]
namespace eval ::Garuda {
variable methodFlags 0x40; # METHOD_PROTOCOL_V1R2
variable assemblyPath $::EAGLE_DLL
}
package require Garuda
puts [eagle version]
puts [garuda packageid]
eagle {
object load UIAutomationClient
object load UIAutomationTypes
object load UIAutomationProvider
set assembly [object load -alias UIAutomationClientsideProviders]
object import System.Windows.Automation
object invoke ClientSettings \
RegisterClientSideProviderAssembly [$assembly GetName]
}
```
The output is as follows.
```
Eagle 1.0.8192.54321 trusted genuine official stable beta {Fire Dragon Series, Beta 50} NetFx20 Release {Tcl 8.4.21} {2022.05.06T21:42:00.000 +0900} 48b99035ca39c1100f84abd801d0309f6ce25106 {2022-05-26 21:44:39 UTC} {Microsoft.NET 4.0.30319.42000 [4.8.4110.0 built by: NET48REL1LAST_B] 528049} {Windows NT} intel
Garuda 1.0 48b99035ca39c1100f84abd801d0309f6ce25106 {2022-05-26 21:44:39 UTC}
{object or type "ClientSettings" not found} {expected type value but got "ClientSettings"}
```
In my weak memory, your calc.exe automation script (ex2.eagle) worked when my main PC was Windows 7 and was using Garuda fetched from teapot repository hosted by ActiveState.
I tried again after making wish.exe.config beside wish.exe hoping that it works under Windows 10 + .NET 4.8 but it didn't help.
```
<?xml version="1.0"?>
<configuration>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup></configuration>
```