G
Guest
I am trying to understand how to efficiently use the GAC, but I am having a
problem with an application I want to deploy to my handhelds. Specifically,
this application uses System.Web.Services.dll as it uses a web service. My
environment is Pocket PC 2003 Phone Edition and a version of this dll is
already contained in the .NET CF.
The version I need to use is 1.0.2268.0. The current version on the device
is 1.0.3111.0. If I deploy my application w/o placing my DLL in the same
directory, I receive a TypeLoadException error. I can make it work by placing
my DLL alongside my application. Rather, I would like to place my
System.Web.Services.dll into \Windows\ and use my own GAC file (containing
"\Windows\System.Web.Services.dll") to register it. That seems to work as I
can verify it in the Registry under
\HKLM\SOFTWARE\Microsoft\.NETCompactFramework\Installer\Assemblies\3rd
Party\. As I am using this DLL in other applications and in other directories
as well, I want to maintain it in one location rather than having it to copy
into the same directory where my applications reside - I'd have multiples of
the same.
Although the versions are different, both DLLs are entered as 1.0.5000.0 in
the registry. My feeling is that my application is still attempting to use
the newer of the two DLLs. If this is the problem, how can I explicitly tell
my application to use the DLL versioned 1.0.2268.0?
problem with an application I want to deploy to my handhelds. Specifically,
this application uses System.Web.Services.dll as it uses a web service. My
environment is Pocket PC 2003 Phone Edition and a version of this dll is
already contained in the .NET CF.
The version I need to use is 1.0.2268.0. The current version on the device
is 1.0.3111.0. If I deploy my application w/o placing my DLL in the same
directory, I receive a TypeLoadException error. I can make it work by placing
my DLL alongside my application. Rather, I would like to place my
System.Web.Services.dll into \Windows\ and use my own GAC file (containing
"\Windows\System.Web.Services.dll") to register it. That seems to work as I
can verify it in the Registry under
\HKLM\SOFTWARE\Microsoft\.NETCompactFramework\Installer\Assemblies\3rd
Party\. As I am using this DLL in other applications and in other directories
as well, I want to maintain it in one location rather than having it to copy
into the same directory where my applications reside - I'd have multiples of
the same.
Although the versions are different, both DLLs are entered as 1.0.5000.0 in
the registry. My feeling is that my application is still attempting to use
the newer of the two DLLs. If this is the problem, how can I explicitly tell
my application to use the DLL versioned 1.0.2268.0?