Посмотрите на принятый ответ в этой теме:
Ссылка на пример рабочего кода
Таким образом, вы должны убедиться, что вы запускаете или работаете в STAThread с staThread.SetApartmentState (ApartmentState.STA);
Я также предлагаю добавить немного сна или подождать после объединения, так как иногда содержимое буфера обмена не сразу доступно, когда возвращается staThread.Join ().