Visual Studio Toolbox的装配位置

时间:2010-01-25 10:04:23

标签: .net visual-studio-2008 visual-studio-2005 compact-framework

我正在尝试在Windows 7 64位版本系统上设置我的开发环境。我已经安装了VS2005和VS2008。

在工作中,我们为.NET Compact Framework提供了几个自行开发的控件库。在Windows XP 32位下,我能够将它们存储在文件夹C:\ owncontrols中并将文件夹添加到

[HKLM\...\Microsoft\.NETCompactFramework\VERSION\WindowsCE\AssemblyFoldersEx\COMPANYNAME]

文件夹结构如下:

c:\owncontrols\libname\2.0\dllname.dll
c:\owncontrols\libname\2.0\dllname.wm5.dll
c:\owncontrols\libname\3.5\dllname.dll
c:\owncontrols\libname\3.5\dllname.wm5.dll

这些DLL都具有相同的版本号。将条目放入注册表后,我能够将控件添加到工具箱中,Visual Studio将根据框架版本和设备类型(WM5或WinCE 5)选择正确的DLL。

在Windows 7下,我无法以某种方式执行此操作。我在WOW6432Node中的HLKM\Software节点下找到了注册表项,并使条目与XP下的相同,但是当我尝试将它们添加到Visual Studio中时,控件不会显示在Visual Studio中工具箱。

所以也许我做错了?如何添加XP所描述的控件?请注意,此处无法安装到GAC - 这些库经常更改。

我非常喜欢Visual Studio根据框架版本和项目类型选择正确的DLL的功能。我尝试手动添加DLL,但后来我看到所有控件都加倍了。

感谢您的帮助 的Thorsten

1 个答案:

答案 0 :(得分:1)

我写了这篇教程文章:

Visual Studio Toolbox Control Integration

这很可能与您的操作系统的位数有关。

您是否也尝试过AssemblyFolders(不仅仅是AssemblyFoldersEx)?

32-bit OS: HKLM\SOFTWARE\Microsoft\.NETFramework\AssemblyFolders\<your control name>
64-bit OS: HKLM\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\AssemblyFolders\<your control name>

32-bit OS: HKLM\SOFTWARE\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\<your control name>
64-bit OS: HKLM\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\<your control name>

在这两种情况下,键的默认值都是一个字符串,其中包含程序集文件夹的完整路径。