System.io.FilenotFoundException: Datei oder Montage kann keine Datei oder Montage laden 'WPF.Tools.csharp (...)'. Das System kann die angegebene Datei nicht finden. (C#): < /p>
Code: Select all
net8.0-windows10.0.19041.0
x86
true
AnyCPU;x86
enable
true
enable
isimplehost.cs:
Code: Select all
using System.Runtime.InteropServices;
namespace Wpf.ComInterop
{
[ComVisible(true)]
[Guid("C2AFE629-B749-41E2-9F9E-98DF063A1D13")]
[InterfaceType(ComInterfaceType.InterfaceIsDual)]
public interface ISimpleHost
{
void ShowWindow();
}
}
Code: Select all
using System.Runtime.InteropServices;
using System.Windows;
namespace Wpf.ComInterop
{
[ComVisible(true)]
[Guid("C3634287-1BFA-410A-BEE7-634F080E9682")]
[ClassInterface(ClassInterfaceType.None)]
public class SimpleComInteropClass : ISimpleHost
{
public SimpleComInteropClass()
{
}
public void ShowWindow()
{
try
{
var window = new SimpleWindow();
window.ShowDialog();
}
catch (Exception ex)
{
MessageBox.Show(String.Format("Error showing window: {1}{0}{0}{2}", Environment.NewLine, ex.Message, ex.InnerException), "Error");
}
}
}
}
Code: Select all
< /code>
Zweite Assemblierung: wpf.tools.csharp < /h2>
Die zweite Baugruppe, die von der wichtigsten verwendet werden soll, ist auch ein C# WPF -Klassenbibliotheksprojekt: < /p>
net8.0-windows10.0.19041.0
AnyCPU;x86
enable
true
enable
< /code>
Es hat eine einzelne Benutzersteuerung: < /p>
< /code>
bauen < /h2>
Diese Baugruppe baut ohne Fehler auf. Ich habe einen wpf.cominterop.tlb Code: Select all
_simpleObject = new SimpleComInteropClass();
_simpleObject.ShowWindow();
< /code>
Dies funktioniert wie erwartet. Ich habe ein äquivalentes Projekt in VB6 erstellt. Die WPF_COMINTEROP " hinzugefügt:
Code: Select all
Private Sub Command1_Click()
Dim objWpf As New SimpleComInteropClass
objWpf.ShowWindow
End Sub
Mobile version