Я создаю приложение, которое использует основной проект, который связан с несколькими различными DLL. Из одного окна DLL мне нужно открыть окно в другом, но DLL не может ссылаться друг на друга.
Мне предложили использовать функцию sendmessage в первой DLL и иметь слушателя в основной программе, которая направляет это сообщение в соответствующую DLL, чтобы открыть его.
Однако я вообще не знаком с функцией sendmessage, и у меня много сложностей, связанных с информацией, которую я нахожу в Интернете.
Если кто-то может, пожалуйста, показать мне правильный способ (если есть) использовать функцию sendmessage и, может быть, как слушатель захватывает это сообщение, которое было бы потрясающе. Вот некоторые из кода, который у меня есть до сих пор. Я не уверен, буду ли я двигаться в правильном направлении.
[DllImport("user32.dll")]
public static extern int FindWindow(string lpClassName, String lpWindowName);
[DllImport("user32.dll")]
public static extern int SendMessage(IntPtr hWnd, int wMsg, IntPtr wParam, IntPtr lParam);
public void button1_Click(object sender, EventArgs e)
{
int WindowToFind = FindWindow(null, "Form1");
}