Isso pode ser feito através de um addon / plugin ou editando o registro e escrevendo um script simples.
aviso Editar o registro errado pode destruir o sistema operacional forçando, na pior das hipóteses, uma restauração completa. Não se mexa aqui e definitivamente considere fazer um ponto de restauração do sistema antes de continuar. Além disso, esse método copia a seleção para o teclado, mas não colará na verdade para você.
- Dito isto, aperte o botão Iniciar e digite regedit e inicie o
app.
- Navegue até HKEY_CURRENT_USER \ Software \ Microsoft \ Internet Explorer \ MenuExt \
Se MenuExt deve existir para o seu já porque você tem a extensão Onenote já, mas eu tive que criar o meu (New Key).
- Em seguida, na tecla MenuExt, crie outra nova chave com o nome que deseja exibir no menu do botão direito, ou seja, "Exportar para o Word".
- Crie uma chave neste chamado "Contextos" e defina os dados (Padrão) como 0x10. Isso indica a opção de mostrar apenas quando você clicou com o botão direito no conteúdo destacado.
- Crie outra chave chamada "Flags" e defina os dados (Padrão) como 0x1. Isso permitirá que o script acesse os dados selecionados.
- Em seguida, vamos precisar criar um script para apontar nosso menu. Eu fiz um arquivo chamado c: \ Users \ username \ Documents \ simple.htm
- Neste exemplo, eu definiria o valor padrão de "Exportar para o Word" para "arquivo: // C: \ Usuários \ nome do usuário \ Documentos \ simples.htm"
- Até onde eu encontrei o bloco de notas, o wordpad e a palavra, todos não têm um método para aceitar entrada direta de texto, apenas arquivos. Portanto, para evitar que esse script grave arquivos temporários, podemos tentar um método de copiar e colar.
simple.htm deve se parecer com isso
<SCRIPT LANGUAGE="JScript">
//find our selected content
var selection = external.menuArguments.document.getSelection();
external.menuArguments.clipboardData.setData("Text", selection.toString());
//create a shell and open wordpad
var WshShell = new ActiveXObject("WScript.Shell");
objExec = WshShell.Exec("notepad.exe");
//give it a second to open then paste
WshShell.AppActivate(objExec.ProcessID);
while (objExec.Status != 0)
{
delayedSendKeys("^V");
}
delayedSendKeys("^V");
//sending keys works better with a delay
function delayedSendKeys(str)
{
WshShell.SendKeys(str);
external.menuArguments.console.log("window","sent keys");
}
</SCRIPT>
E é aí que eu fico preso. Você pode pressionar ctrl + v e colar sua seleção na janela aberta, mas pelo que eu li sendkeys gosta de um atraso, mas setTimeout não funciona e o IE não nos dá acesso ao objeto WScript para que possamos dormir por 100ms ou mais.