Garuda/Eagle in starpack
Not logged in
This forum is sponsored by Mistachkin Systems.
Eagle: Secure Software Automation
Finally, the wrapped script could create an instance of GRPCRemoteClient.

These were necessary.

+ AssemblyResolve delegate.
+ Return null when an exception is thrown in AssemblyResolve delegate.
+ Fully qualified assembly name to instantiate GRPCRemoteClient.

These were not necessary.

+ Removing ".x86" from native assembly file name.
+ addToPath $dll_dir
+ Explicitly loading the following dependent assemblies.
  + Grpc.Core.dll
  + System.Memory.dll
  + System.Runtime.CompilerServices.Unsafe.dll

Really, thank you very much!
I can proceed to integrate this code to my real application.


### Rewrite of assemblyResolve
```tcl
proc assemblyResolve { sender e } {
	global dll_dir
	
	if {[catch {
		set eName [$e Name]
		if {![regexp {^([^,]+),.+$} $eName -> name]} {
			set name $eName
		}
		log "name = $name"
		
		set dll_path [file join $dll_dir $name.dll]
		log "dll_path=$dll_path"
		
		if {[file exists $dll_path]} {
			set type [load_type $dll_path]
			log "type=$type"
		} else {
			return AssemblyNotFound
		}
	} err]} {
		log $err
		return null
	} else {
		return $type
	}
}
```