Patent Number: 6,167,565

Title: Method and system of custom marshaling of inter-language parameters

Abstract: A computer-based custom marshaling method and system for custom marshaling of parameters during invocation of functions implemented in a second language by computer programs implemented in an first language. The parameter to be custom marshaled has a first type in the first language and a second type in the second language. The custom marshaling system receives code for converting a parameter of the first type to a parameter of the second type and for converting a parameter of the second type to a parameter of the first type. The custom marshaling system monitors the execution of a computer program implemented in the first language that invokes a function implemented in the second language. The invocation passes a parameter of the first type, and the function expects a parameter of the second type. The custom marshaling system intercepts the invocation of the function implemented in the second language. After intercepting the invocation, the custom marshaling system executes the received code for converting the passed parameter of the first type to a parameter of the second type. The custom marshaling system then invokes the function implemented in the second language passing the parameter converted to the second type. The invoked function returns a parameter of the second type. After invocation of the function, the custom marshaling system executes the received code for converting the returned parameter of the second type to a parameter of the first type and returns the converted parameter of the first type when returning from the intercepted invocation of the function.

Inventors: Kanamori; Atsushi (Redmond, WA)

Assignee: Microsoft Corporation

International Classification: G06F 9/42 (20060101); G06F 9/46 (20060101); G06F 9/40 (20060101); G06F 009/44 ()

Expiration Date: 12/26/2017