Что лучший способ к интерфейсу C# и Java? [закрытый]

Сначала , FindWindowA() может найти окна, которые нужно отправить, и получить дескриптор окна («hwnd»). Используйте SendMessage() отправку чего-либо в обработчик сообщений Trigger WindowProcedure(), затем обработайте этот тип сообщения в WindowProcedure().

Вот пример кода:

LRESULT CALLBACK WindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
    COPYDATASTRUCT* copyData;
    CHAR str[BUFFER_SIZE] = { 0 };
    switch (message)
    {
    case WM_CREATE:
        //Do Creat Windows.
        break;
    case WM_COMMAND:
        //Do Something.
        break;
    case WM_COPYDATA:
        copyData = (COPYDATASTRUCT*)lParam;
        memcpy(str, (void *)copyData->lpData, copyData->cbData);
        MessageBoxA(hWnd, str, "title", MB_OKCANCEL);
        break;
    }
}

файл class.cpp:

#include <windows.h>
#pragma  warning(disable:4996)
int main()
{
    char szWindowClass[] = "EDIT";
    char cp[] = "printthis";
    HWND hWnd = FindWindowA(szWindowClass, "xxx"/*windows title*/);
    COPYDATASTRUCT copyData = { 0 };
    copyData.lpData = cp;
    copyData.cbData = strlen(cp)+1;
    LRESULT h = SendMessageA(hWnd, WM_COPYDATA, 0, (LPARAM)&copyData);
    BOOL reg = SetWindowTextA(hWnd, "test");
    return 0;
}
5
задан Beardo 12 November 2008 в 20:06
поделиться

6 ответов

Выставьте веб-сервис на бэкенде Java и имейте фронтэнд C#, говорят с веб-сервисом Java. Изучите WCF (коммуникационная основа окон), это могло бы сделать говорящий с веб-сервисом Java намного легче.

1
ответ дан 14 December 2019 в 19:29
поделиться

Веб-сервисы должны быть Вашим выбором по умолчанию, потому что существует такая работа вокруг совместимости в том пространстве.

Если Вы не возражаете против плотного соединения и должны принять основанные на производительности решения, два решения, с которыми я встретился:

Я уверен, что существуют другие.

2
ответ дан 14 December 2019 в 19:29
поделиться

В то время как веб-сервисы (WS -*) могли бы быть правильным решением, заставление стеков взаимодействовать может быть топорным.

Существует очень, чтобы быть сказанным для HTTP + (POX | JSON) и архитектура REST-ian.

2
ответ дан 14 December 2019 в 19:29
поделиться

Я работал над бэкендом Java к толстому клиенту C#. Они связались через веб-сервисы хорошо. Единственная проблема, которую мы действительно имели, была с иерархиями наследования, какие веб-сервисы WSDLs стирают.

0
ответ дан 14 December 2019 в 19:29
поделиться

Вы могли использовать веб-сервисы.

Или Вы могли использовать IVKM для встраивания кода Java непосредственно в блок.NET.

0
ответ дан 14 December 2019 в 19:29
поделиться

Я действительно полагаю, что существуют некоторые проблемы совместимости с помощью веб-сервисов через платформы Java/.NET. Например, существуют некоторые проблемы с помощью Axis2 и .NET вместе. В большинстве случаев обходные решения существуют.

Я услышал некоторые хорошие комментарии об использовании архитектуры REST-ian все же.

0
ответ дан 14 December 2019 в 19:29
поделиться