Почему родное приложение не отображается до тех пор, пока не будет закрыто Chrome при отправке нативного сообщения? - PullRequest
0 голосов
/ 08 февраля 2020

У меня есть расширение для обмена сообщениями с собственным приложением в Chrome. Когда я отправляю сообщение, нативное приложение не отображается, пока chrome не закроется. В чем здесь проблема?

chrome.downloads.onDeterminingFilename.addListener(function(item, suggest) {

valpairs = item.finalUrl + "e7dfa9a6-f9d8-4146-89f5-ca441f0f5b23" + valpairs;

var port = chrome.runtime.connectNative('com.alto.downloadmanager');
port.onMessage.addListener(function(msg) {
  console.log("Received" + msg);
});
port.onDisconnect.addListener(function() {
  console.log("Disconnected");
});
port.postMessage({ text: valpairs });


chrome.downloads.cancel(item.id);
});

Program.cs:

static void Main(string[] args)
        {
            JObject data;
            var processed = "";
            while ((data = Read()) != null)
            {
                processed = ProcessMessage(data);
                Write(processed);
                if (processed == "exit")
                {
                    break;
                }
            }


            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1(processed));

        }

1 Ответ

0 голосов
/ 11 февраля 2020

Вы должны отправить эти данные sh, чтобы немедленно отправить их на ваш собственный узел обмена сообщениями. Из вашего поста не понятно, какой API вы используете для записи на стандартный ввод. Если вы используете FileStream, тогда используйте FileStream.Flu sh или если вы используете StreamWriter, тогда используйте StreamWriter.Flu sh и std::flush в C ++ , как я уже упоминал в этой теме

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...