2015-10-10 3 views
0

Я искал везде, но нашел решения, вращающиеся онлайн-изображения. Я имею дело с локального изображения с этой директории: C: \ Users \ ME \ Desktop \ Venice.jpgУстановить локальное изображение в содержимое буфера обмена

мне нужно некоторые Javascript или VBScript, чтобы просто установить, что сам (не путь) изображения в буфер обмена , так что я могу вставить изображение в приложение, например Word или MS Paint.

Я нашел следующий код, но не знаю, как его адаптировать для моего использования. Нет необходимости пользоваться Интернетом. Простая локальная функция javascript - это все, что мне нужно. У меня нет подходящего html, поэтому я не вижу, что заменить под «div» ниже. Любая помощь велика! Спасибо.

var div = document.getElementById('DivtoCopy'); 
div.contentEditable = 'true'; 
var controlRange; 
if (document.body.createControlRange) { 
controlRange = document.body.createControlRange(); 
controlRange.addElement(div); 
controlRange.execCommand('Copy'); 
} 
div.contentEditable = 'false'; 
+0

Вы ограничены JavaScript и VBScript? Было бы намного проще сделать это в PowerShell. –

+0

Я могу использовать PowerShell. Можете ли вы предложить решение? Спасибо – Mathomatic

ответ

1

В PowerShell копирование изображения из файла в буфер обмена будет так же просто, как это:

Add-Type -Assembly System.Windows.Forms 
Add-Type -Assembly System.Drawing 

$imgpath = 'C:\Users\ME\Desktop\Venice.jpg' 
$img = [Drawing.Image]::FromFile($imgpath) 
[Windows.Forms.Clipboard]::SetImage($img) 
+0

Спасибо, я скоро установлю PowerShell и отчитаюсь. – Mathomatic

+0

Я пробовал код, который вы указали, но он дал мне следующую ошибку: http://i.imgur.com/GifZsE3.png – Mathomatic

+0

Следующая ссылка, похоже, объясняет решение, но я не знаю PowerShell. Любая помощь? Спасибо http://blogs.msdn.com/b/smondal/archive/2010/09/08/current-thread-must-be-set-to-single-thread-apartment-sta-mode-before-ole-calls -can-be-made.aspx – Mathomatic