Здравствуйте, Багер, Вы писали:
Б>Подскажите, пожалуйста, как можно, например из 1С, подписаться на изменения в буфере обмена?
К COM это вроде как не имеет отношения?
Если речь про windows, то есть WINAPI SetClipboardViewer / AddClipboardFormatListener
https://stackoverflow.com/questions/621577/clipboard-event-c-sharp
Как это будет выглядеть применительно к 1C я не в курсе
Здравствуйте, bnk, Вы писали:
bnk>Здравствуйте, Багер, Вы писали:
Б>>Подскажите, пожалуйста, как можно, например из 1С, подписаться на изменения в буфере обмена?
bnk>К COM это вроде как не имеет отношения?
bnk>Если речь про windows, то есть WINAPI SetClipboardViewer / AddClipboardFormatListener
bnk>https://stackoverflow.com/questions/621577/clipboard-event-c-sharp
bnk>Как это будет выглядеть применительно к 1C я не в курсе
По ссылке SO идет описание старой
SetClipboardViewer, а она ненадежна, и зависит от других работающих просмотрщиков буфера обмена.
И соответственно, эта функция грешит тем, что периодически отваливается.
Лучше для новых версий Windows (Vista и старше) использовать новую
AddClipboardFormatListener.
Она понадежнее будет, как показывает опыт.
Ну и еще есть пара трюков, чтобы не отваливался такой наблюдатель за клипбордом… Но это уже фокесы-покесы
Так-то всё понятно, но С модуль прямо в 1С не подключить. Можно ли подключить что-то типа вызова функции 1С по событию изменения буфера обмена через передачу "ссылки" на процедуру в некую ДЛЛ или шел-чего-то-как-то-там?