开发了一个 32 位的 Visual Basic dll。dll 只写了 1 个方法GetSum有两个整数参数
现在使用后期绑定在 Winform 32 位应用程序中加载一个 dll。传递两个整数值在标签中显示总和。总和显示正确。
private void Form1_Load(object sender, EventArgs e)
{
object[] args = new object[] { "89", "2" };
Type comObjectType = Type.GetTypeFromProgID("Project1.Class1", true);
object comObject = Activator.CreateInstance(comObjectType);
Type acctualObjectType = comObject.GetType();
object result = acctualObjectType.InvokeMember("GetSum", System.Reflection.BindingFlags.InvokeMethod, null, comObject, args);
label1.Text = result.ToString();
}
我的问题是当我在 Windows 7 64 位机器上运行 winfrom exe 时。在任务管理器进程部分显示如“WindowsFormsApplication.exe *32”
意味着我的 winfrom exe 在 64 位机器上以 32 位模式运行。我应该怎么做才能在 64 位机器上运行我的 32 位 exe 以作为 64 位 exe 运行。
不希望 *32 附加到任务管理器进程部分中的 exe。