找不到TinyMCE .NET DLL

时间:2010-11-17 16:13:26

标签: asp.net security .net-4.0 tinymce

我想在我的项目中包含.Net TinyMCE dll。我正在使用的代码是:

<%@ Register Assembly="Moxiecode.TinyMCE" Namespace="Moxiecode.TinyMCE.Web" tagprefix="tinymce" %>

我已经将dll添加到项目中的引用中,我检查了csproj中的代码以确保它是正确的。我修改它以确保它有一个路径提示。

<Reference Include="Moxiecode.TinyMCE, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
  <HintPath>bin\Moxiecode.TinyMCE.dll</HintPath>
  <SpecificVersion>False</SpecificVersion>
</Reference>

当我尝试构建项目时,收到错误消息:

  

无法加载文件或程序集   '文件:/// C:[ProjectPath] \ BIN \ Moxiecode.TinyMCE.dll'   或其中一个依赖项。手术   不受支持。 (例外   HRESULT:0x80131515)

如何解决此错误?我试过打开和关闭VS2010。添加和删​​除引用。没有任何效果。


经过更多的研究后,问题似乎是我使用.Net 4.0和TinyMCE的.Net dll没有强名称。基本上,它没有PublicKeyToken。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

我不确定这是否会解决问题但是你的提示路径是相对的,我相信你需要用.\(或..\为父母)启动它

DLL的实际路径在哪里?您是否尝试将构建输出级别设置为Diagnostic(Tools -> Options... -> Projects and Solutions -> Build and Run

这能为您提供更多信息吗?

出于测试目的,请尝试创建C:\Bin\Moxiecode并将DLL放入其中。这是否解决了这个问题? (在这种情况下,这是一个路径问题)。如果没有,它可能是其他东西,它会引发一个误导性的例外(腐败的dll或类似的?)。 [编辑:在编辑Q之前,此段中提到的路径是正确的)

更新:如果您正在使用强名称编译项目,那么您的所有引用也必须有一个。这是为了确保您的代码没有恶意注入其中。您唯一的选择是:

  • 不要强烈签署您的项目[错误]
  • 使用SNK自行重新编译有问题的DLL [如果可以获得来源,则很好]
  • 让DLL的开发人员为你建立一个SNK [如果你能做到这一点就很好]