jacklimin
路人甲
路人甲
  • 注册日期2004-09-02
  • 发帖数8
  • QQ
  • 铜币137枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:1433回复:0

MapObjects安装在.NET2003上

楼主#
更多 发布于:2004-09-10 09:29
<P>Bug:  The 'SDK for .NET' option is disabled when running MapObjects 2.2 set up
Article ID: 24824 Bug Id: CQ00194825 Software: MapObjects-Windows 2.2 Platforms: Windows NT 4.0, 2000, XP</P>Description During the setup installation process for the MapObjects version 2.2, the new product or upgrade, one of the options which can be selected in the Select Components window is 'MapObjects SDK for .NET'. If the machine has .NET Framework, version 1.0 installed, that option will be selectable. However, if the machine has the newer .NET Framework version 1.1 installed, the 'MapObjects SDK for .NET' will remain disabled.

How is SDK for .NET installed if the option to install it is OFF and disabled?
<P>
</P>Cause The MapObjects setup program searches the local machine's registry for a specific key value which tells the setup program the location of the .NET Framework's GACUTIL.EXE for version 1.0. When MapObjects version 2.2 was originally released, the current version of .NET was 1.0. However, when .NET Framework version 1.1 was released, Microsoft changed the name of the Registry key value in which the path to the GACUTIL.EXE is stored. If your machine never had version 1.0 installed, but you do have version 1.1 installed, attempts to install MapObjects version 2.2, will not find the location of the GACUTIL.EXE and the option to install the 'MapObjects .NET SDK' will be disabled and remain unselected.


<P>
</P>Solution or Workaround WARNING: This article contains instructions to make specific changes to essential parts of your operating system. If these specific changes are not done correctly, it may cause serious problems to your computer operating system and files. First, ESRI recommends that you make a complete backup of your system, including the registry, before implementing any of the specific changes. It is highly recommended that you consult with your IT/MIS department, or other qualified computer systems professional before proceeding. ESRI cannot guarantee that you can solve problems that result from incorrect use of the Registry Editor utility. Use the Registry Editor utility at your own risk. Note: your operating system and any subsequent service packs may effect these instructions. These instructions are subject to change without notice.
This solution requires administrator permissions on the PC on which you want to use MapObjects with your .NET IDE.


Use the Registry Editor REGEDIT.EXE to navigate to the key location:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework

In the key, on the right panel of the Registry Editor application, find 'sdkInstallRootv1.1' in the Name column and its value in the Data column. This data value is a string which is the path in which the 'bin\gacutil.exe' is stored. Also verify that you have another named value called 'sdkInstallRoot' in the same key.
If you do have an entry called 'sdkInstallRoot', check that the value, in the Data column, is the exact same string as in the 'sdkInstallRootv1.1' data value. If yes, close REGEDIT and go to Step 4.

If you have an entry called 'sdkInstallRoot', but its value is different than the value for 'sdkInstallRootv1.1', keep track of the sdkInstallRoot current data value for use later, and modify it so that it is the exact data value as in 'sdkInstallRootv1.1' and proceed to Step 4.


To modify a value, right-click the 'sdkInstallRoot' name, and select Modify from the popup menu.

If you do not have an entry in the Name column called 'sdkInstallRoot', use the Edit menu's New > String Value menu item to add it to this key, and set its value to be the exact string as in the 'sdkInstallRootv1.1' value. Close REGEDIT and proceed to Step 4.


Run the MapObjects 2.2 setup program 'MO22Setup.exe' found on the installation CD, to install MapObjects onto your machine. In the Select Components window, you should see that 'MapObjects SDK for .NET' is enabled and selected.
Go back to Step 3 to check on any of the following:

A. If the 'sdkInstallRoot' already existed, and its data value was exactly the same as the 'sdkInstallRootv1.1' value, you are done; or

B. If the 'sdkInstallRoot' already existed, but its data value was something other than the 'sdkInstallRootv1.1' data value, and you modified it, then use REGEDIT to change the 'sdkInstallRoot' value back to its original value; or

C. If the 'sdkInstallRoot' name did not exist, and you added it, use REGEDIT to delete it. It is no longer needed. It is important this is done, so that use of other software that checks this key is not tricked into thinking you have the 1.0 version of the .NET Framework installed.
喜欢0 评分0
游客

返回顶部