小编Jen*_*ger的帖子

"无法加载文件或程序集......"DotNetOpenAuth + MVC3

我收到以下错误

    Could not load file or assembly 'file:///C:\Users\<project path>\bin\DotNetOpenAuth.dll'
    or one of it's dependencies. Operation is not supported. 
    (Exception from HRESULT: 0x80131515)
Run Code Online (Sandbox Code Playgroud)

当我尝试将Controller添加到MVC3框架内的Controllers文件夹时,我得到了这个.

我最近才开始使用MVC3和DotNetOpenAuth,我一直在使用教程来尝试学习它,我正在复制的部分是:http://www.asp.net/mvc/tutorials/getting-started-与-ASPNET-MVC3/CS /添加-A-模型

我仍然可以运行该项目,一切正常,我根本无法添加控制器.

我在Windows 7上使用VS .NET 2010(64位).

如果有任何其他需要的信息,请告诉我,提前谢谢!

.net .net-assembly dotnetopenauth asp.net-mvc-3

4
推荐指数
1
解决办法
1万
查看次数

跨越不同的程序集版本传递类对象

场景如下 -

  • 我有一个组件说'MyAssembly'.接口说'IMyInterface'在此程序集中定义.
  • 在同一个程序集中,我有一个类(MyClass),其中的方法定义如下:

public void MyMethod(IMyInterface object){}

  • 现在,在我的项目中,我创建了一个具有相同名称和确切属性的接口,这些接口由"MyAssembly"中的"IMyInterface"接口公开.
  • 我有一个扩展此接口的类(我在我的项目中创建的那个),我希望将该类的对象作为参数传递给使用反射的不同程序集中的方法"MyMethod".

问题是 -

  • 当我尝试使用反射调用方法时,我得到了"无法将对象转换为类型IMyInterface"的异常.

代码 -

Assembly myAssembly = Assembly.LoadFrom("MyAssembly");
object classObject = myAssembly.CreateInstance("MyClass");
Type classType = myAssembly.GetType("MyClass");
MethodInfo myMethod = classType.GetMethod("MyMethod", BindingFlags.Instance);

// Creating an object of class in the latest assembly and need to pass this
// to method in assembly with different version.
ClassExtendingMyInterface obj= new ClassExtendingMyInterface ();

myMethod.Invoke(classObject, new object[] { obj});
Run Code Online (Sandbox Code Playgroud)

如果,我说得对,这是因为创建的对象是在不同的程序集中,并且该方法所期望的参数是它自己的程序集.

我想到的另一种方法是在类中创建我自己的动态方法,它将接受我的类的对象.

我试图通过Reflection.EmitRunSharp来google并动态创建自己的类.但是,我们只能在动态生成的程序集中使用它,但不能在现有程序集中创建动态方法或类.

我知道在运行时生成程序集并不是一个好方法.但我现在想不出任何事情.谢谢你的帮助.

c# reflection reflector assemblies reflection.emit

3
推荐指数
1
解决办法
2192
查看次数

从特定文件夹动态加载DLL?

目前,我有这个代码:

var shellViewLibrary = Assembly.LoadFrom(Path.Combine(_DllsPath, _DllShellView));
IEnumerable<Type> types = shellViewLibrary.GetTypes();

foreach (Type type in types)
{
    var typeIShellViewInterface = type.GetInterface(_NamespaceIShellView, false);
    if (typeIShellViewInterface != null)
    {
        //here
    }
}
Run Code Online (Sandbox Code Playgroud)

问题是,//here我想用它Activator.CreateInstance来创建一个类型type 在特定文件夹(在build文件夹之外)的对象,我尝试了大约20种不同的东西,其中大部分是这样的:http://msdn.microsoft .com/zh-cn/library/d133hta4.aspx 但没有效果......我尝试过的典型事情是:

object MyObj = Activator.CreateInstance(shellViewLibrary.FullName, type.FullName);
Run Code Online (Sandbox Code Playgroud)

要么

object MyObj = Activator.CreateInstance(Path.Combine(_DllsPath, _DllShellView), type.FullName);
Run Code Online (Sandbox Code Playgroud)

我总是有不同的例外,最常见的是:

XamlParseException
Run Code Online (Sandbox Code Playgroud)

我觉得我没有使用Activator.CreateInstance以正确的方式使用2个参数.我该怎么办 ?

c# dll assemblies

3
推荐指数
2
解决办法
1万
查看次数

MIP 程序使用堆栈反转字符串

当我运行我的程序时出现错误。这是我收到的错误。

我收到异常错误。错误提示“数据/堆栈读取中的地址错误”

错误提示“指令引用未定义的符号”

在控制台中显示“要反转的字符串:

COSC 300 异常 7 [错误数据地址] 发生并被忽略

该程序

.data

str: .asciiz "String to be reversed : \n" 
msg: .asciiz "COSC 300" 
ans: .asciiz "The string reversed is : " 

.text
.globl main



main: 

la $a0, str            #print string
li $v0, 4 
syscall

la $a0, msg            #print string
li $v0, 4
syscall

la $t0, msg            #load a string to be reversed



loop:
lb $t0, 0 ($t0)       #load char from msg
beqz $t0, stringEnd   # if null end loop …
Run Code Online (Sandbox Code Playgroud)

assembly mips

3
推荐指数
1
解决办法
7702
查看次数

"js 2f \n\t"中f的含义是什么?

代码:

extern inline int strncmp(const char * cs, const char * ct, int count)
{
register int __res;
__asm__("cld\n"
"1:\tdecl %3\n\t"
"js 2f\n\t"
"lodsb\n\t"
"scasb\n\t"
"jne 3f\n\t"
"testb %%al, %%al\n\t"
"jne 1b\n"
"2:\txorl %%eax,%%eax\n\t"
"jmp 4f\n"
"3:\tmovl $1,%%eax\n\t"
"j1 4f\n\t"
"negl %%eax\n"
"4:"
:"=a" (__res):"D" (cs), "S" (ct), "c" (count):"si","di","cx");
return __res;
}
Run Code Online (Sandbox Code Playgroud)

我不理解" js 2f \n\t "中的f和" jne 1b \n "中的b,如何理解这一点?我应该看哪本书?谢谢.

assembly gcc inline-assembly linux-kernel

3
推荐指数
1
解决办法
798
查看次数

将常量值添加到x86中的xmm寄存器

我如何添加12注册xmm0(双)?

我可以这样做,但肯定必须有一个更简单的方法:

movsd xmm0, [ecx]

xor eax, eax
inc eax
cvtsi2sd xmm1, eax
addsd xmm0, xmm1

movsd [ecx], xmm0

还可以使用浮点x87指令执行此操作吗?

这对我不起作用:

fld dword ptr [ecx]
fld1
faddp
fstp dword ptr [ecx]

x86 assembly sse x87

3
推荐指数
1
解决办法
9063
查看次数

二进制减法与2的补语

我需要帮助使用2的表示法减去二进制,并为每个数字使用5位:

1)-9 -7 =?有溢出吗?

-9 = 01001(2的补码= 10111)和-7 = 00111(2的补码= 11001)

现在我们需要添加因为我们正在使用2的补码

10111 +11001 = 100000但这个答案没有意义.此外,我假设有溢出,因为答案中有超过5位.

2)6 - 10,与以前相同的过程.负二进制数对我没有意义

binary subtraction twos-complement

3
推荐指数
1
解决办法
6万
查看次数

C与vDSP与NEON的比较 - NEON怎么能像C一样慢?

NEON怎么会像C一样慢?

我一直在尝试构建一个快速的直方图函数,通过为它们分配一个值 - 即它们最接近的范围阈值,将输入值分成范围.这是应用于图像的东西,因此它必须是快速的(假设图像阵列为640x480,因此300,000个元素).直方图范围数是倍数(0,25,50,75,100).输入将是浮点数,最终输出显然是整数

我通过打开一个新的空项目(没有app委托)并仅使用main.m文件在xCode上测试了以下版本.除了Accelerate之外,我删除了所有链接库.

这是C实现:如果那时旧版本很多,但这里是最终的优化逻辑.花了11秒和300毫秒.

int main(int argc, char *argv[])
{
  NSLog(@"starting");

  int sizeOfArray=300000;

  float* inputArray=(float*) malloc(sizeof(float)*sizeOfArray);
  int* outputArray=(int*) malloc(sizeof(int)*sizeOfArray);

  for (int i=0; i<sizeOfArray; ++i)
  {
    inputArray[i]=88.5;
  }

  //Assume range is [0,25,50,75,100]
  int lcd=25;

  for (int j=0; j<1000; ++j)// just to get some good time interval
  {
    for (int i=0; i<sizeOfArray; ++i)
    {
        //a 60.5 would give a 50. An 88.5 would give 100
        outputArray[i]=roundf(inputArray[i]/lcd)*lcd;
    }
  }
NSLog(@"done");
}
Run Code Online (Sandbox Code Playgroud)

这是vDSP实现.即使有一些繁琐的浮动到整数来回,它只花了6秒!差不多50%!

//vDSP implementation
 int main(int argc, char *argv[])
 {
   NSLog(@"starting"); …
Run Code Online (Sandbox Code Playgroud)

assembly arm objective-c neon vdsp

3
推荐指数
1
解决办法
1593
查看次数

如何在 Maven 程序集的 basedir 中包含所有文件(不是目录)

在如下所示的 Maven 程序集中,结果是发生递归,重新包含基目录。

以下失败实际上消耗了 cpu 并且不返回:

<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
  <id>deploy</id>
  <baseDirectory>hive</baseDirectory>
    <includeBaseDirectory></includeBaseDirectory>
    <formats>
    <format>zip</format>
  </formats>
  <fileSets>
        <fileSet>
            <directory>${basedir}/lib</directory>
            <outputDirectory>lib</outputDirectory>
        </fileSet>
      <fileSet>
            <directory>${basedir}</directory>
            <outputDirectory></outputDirectory>
        </fileSet>
  </fileSets>
  <files>
    <file>
        <source>${basedir}/target/${project.build.finalName}.jar</source>
        <outputDirectory>lib</outputDirectory>
    </file>
  </files>
</assembly>
Run Code Online (Sandbox Code Playgroud)

如果没有包含基目录,则 lib/* 下的文件将被正确包含并且汇编成功。那么..这里正确的语法是什么?谢谢!

以下构建了一个输出 zip,但没有基本目录中的文件 - 所以它不完整:

    <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
  <id>deploy</id>
  <baseDirectory>hive</baseDirectory>
    <includeBaseDirectory></includeBaseDirectory>
    <formats>
    <format>zip</format>
  </formats>
  <fileSets>
        <fileSet>
            <directory>${basedir}/lib</directory>
            <outputDirectory>lib</outputDirectory>
        </fileSet>
  </fileSets>
  <files>
    <file>
        <source>${basedir}/target/${project.build.finalName}.jar</source>
        <outputDirectory>lib</outputDirectory>
    </file>
  </files>
</assembly>
Run Code Online (Sandbox Code Playgroud)

maven maven-assembly-plugin

3
推荐指数
1
解决办法
8000
查看次数

如何为汇编语言的程序制作Makefile?

我遇到过这个任务,用汇编语言为程序构建一个Makefile(没什么特别的,就像一个hello world).该程序是Linux 32位,我正在使用NASM汇编程序.到目前为止,我只能为C程序找到Makefiles,我知道彼此之间没有太大区别,但我不熟悉这个东西.我有的是这个:

Program: main.o
    gcc -o Program main.o
main.o: main.asm
    nasm -f elf -g -F stabs main.asm
Run Code Online (Sandbox Code Playgroud)

我不知道这是否正确,或者如果是,它是如何工作的.我无法尝试代码,因为这台计算机没有Linux.我真的很想知道代码中发生了什么.

linux x86 assembly makefile nasm

3
推荐指数
1
解决办法
2万
查看次数