当Win Form程序调用DLL文件时,添加引用后编译不通过,提示没有引用。解决方案如下:
1.采用反射的方式调用
if (File.Exists(ApplcationConfig.getProperty("ApplicationRootPath") + "\\" + "test.dll"))
{
Assembly assembly = Assembly.LoadFrom(ApplicationConfig.getProperty("ApplicationRootPath") + "\\" + "test.dll");
//string数组,反射调用窗口时传参数使用
string[] entity = new string[]
{
“”,
“”,
“”,
};
ConstructorInfo constructor = assembly.GetType("ImportForm").GetConstructor(new Type[] { typeof(string[]) });
Form myForm = (Form)constructor.Invoke(new object[] { entity });
myForm.ShowDialog();
}
else
{
MessageBox.Show("缺少dll文件!请联系管理员解决");
}
2.原因可能为两个dll的使用目标框架不同,改为一致即可解决。
标签:调用,string,Form,C#,dll,编译,引用,new,Dll From: https://www.cnblogs.com/jiangyuhu/p/18227343