AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / computer / Perguntas / 1479069
Accepted
Gabriel Fair
Gabriel Fair
Asked: 2019-09-05 19:36:14 +0800 CST2019-09-05 19:36:14 +0800 CST 2019-09-05 19:36:14 +0800 CST

Adicionar uma opção "Copiar URI para a área de transferência" na caixa de diálogo "Abrir com" do Windows 10

  • 772

Fundo

Quando clico neste link, o Windows tenta abri-lo com um aplicativo. Isso ocorre porque o URI é estruturado como: twitter://realDonaldTrump/status/266259787405225984estando twitterna posição de protocolo do link.

Quando clico neste link em um UWP do Windows 10 como 'Messenger', não consigo resolvê-lo porque o Windows o registra como um URI de aplicativo. O que faz sentido, mas gostaria de ter algum controle sobre esse comportamento.

Pergunta

Como posso adicionar um botão "Copiar URI para a área de transferência" à caixa de diálogo "Abrir com"? Veja abaixo uma imagem do que estou falando:

insira a descrição da imagem aqui

windows-10 clipboard
  • 1 1 respostas
  • 279 Views

1 respostas

  • Voted
  1. Best Answer
    Worthwelle
    2019-09-06T10:40:58+08:002019-09-06T10:40:58+08:00

    Não conheço uma maneira de adicionar isso à caixa de diálogo Abrir com, mas é possível que copiar o URI seja a ação padrão para esse protocolo. Isso é possível com alguma modificação do registro. Na maioria das vezes, as associações de arquivo e protocolo são exatamente o que você digitaria para executar algo na linha de comando.

    As associações de arquivo e protocolo são armazenadas e lidas na HKEY_CLASSES_ROOTseção de registro. (Para obter mais informações sobre associações de arquivos, esta resposta pode ajudá-lo.)

    o .regarquivo

    Uma definição de protocolo muito simples para o que você deseja fazer está listada abaixo:

    ; twitter_protocol.reg
    Windows Registry Editor Version 5.00
    
    [HKEY_CLASSES_ROOT\twitter]
    @="URL:twitter"
    "URL Protocol"=""
    
    [HKEY_CLASSES_ROOT\twitter\shell]
    @="open"
    
    [HKEY_CLASSES_ROOT\twitter\shell\open]
    
    [HKEY_CLASSES_ROOT\twitter\shell\open\command]
    @="cmd /c ECHO|SET /P=%1|CLIP"
    

    Copie isso em um arquivo chamado twitter_protocol.rege clique duas vezes nele para importar para o seu registro.

    A explicação

    Existem muitas opções que você pode especificar dentro dessas chaves. Os importantes no caso de uma associação de protocolo são:

    • HKEY_CLASSES_ROOT\<protocol>- a string antes do ://.
    • HKEY_CLASSES_Root\<protocol>- (Default)- a descrição do protocolo, por exemplo, "URL do Twitter".
    • HKEY_CLASSES_ROOT\<protocol>- URL Protocol- especifica que esta é uma associação de protocolo e deve ser deixado em branco.
    • HKEY_CLASSES_ROOT\<protocol>\shell\open\command- (Default)- especifica a linha de comando para abrir o aplicativo associado.

    Nesse caso, definimos a opção de linha de comando como cmd /c ECHO|SET /P=%1|CLIP, então vamos detalhar isso:

    • cmd /c ...abrirá uma janela de prompt de comando para executar seu comando. ECHOe SETsão rotinas de linha de comando, em vez de aplicativos separados por conta própria, portanto, precisamos de um prompt de comando em execução para usá-lo.
    • ECHO|SET /P=%1é uma maneira excessivamente complicada de dizer "imprima a entrada sem uma nova linha extra no final".
      • ECHOpor si só imprimirá tudo o que estiver escrito depois dele no prompt de comando e adicionará uma linha extra depois dele.
      • |SET /P=é um hack usado para remover a nova linha. SETé normalmente usado para definir variáveis ​​de ambiente, mas não o usamos para isso neste caso. |é explicado abaixo.
      • %1é a entrada. Neste caso é twitter://realDonaldTrump/status/266259787405225984.
    • |é chamado de "caractere pipe", o que significa que estamos pegando a saída do que vem antes dele e dando-o como entrada para o que vem depois dele.
    • CLIPirá ler a entrada do pipe (ao contrário de usar um argumento de linha de comando, que não suporta) e copiá-lo para a área de transferência.
    • 2

relate perguntas

  • O serviço de arbitragem USB da estação de trabalho VMware não inicia automaticamente

  • Como ativar o sensor de impressão digital no domínio e no diretório ativo do Linux

  • atalho do shell da área de trabalho no painel lateral do explorer

  • Por que não consigo enviar arquivos do Android para o Windows 10?

  • Abrir com em vários arquivos?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    O visualizador de fotos do Windows não pode ser executado porque não há memória suficiente?

    • 5 respostas
  • Marko Smith

    Como faço para ativar o WindowsXP agora que o suporte acabou?

    • 6 respostas
  • Marko Smith

    Área de trabalho remota congelando intermitentemente

    • 7 respostas
  • Marko Smith

    Serviço do Windows 10 chamado AarSvc_70f961. O que é e como posso desativá-lo?

    • 2 respostas
  • Marko Smith

    O que significa ter uma máscara de sub-rede /32?

    • 6 respostas
  • Marko Smith

    Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows?

    • 1 respostas
  • Marko Smith

    O VirtualBox falha ao iniciar com VERR_NEM_VM_CREATE_FAILED

    • 8 respostas
  • Marko Smith

    Os aplicativos não aparecem nas configurações de privacidade da câmera e do microfone no MacBook

    • 5 respostas
  • Marko Smith

    ssl.SSLCertVerificationError: falha na verificação do certificado [SSL: CERTIFICATE_VERIFY_FAILED]: não foi possível obter o certificado do emissor local (_ssl.c:1056)

    • 4 respostas
  • Marko Smith

    Como posso saber em qual unidade o Windows está instalado?

    • 6 respostas
  • Martin Hope
    Albin Como faço para ativar o WindowsXP agora que o suporte acabou? 2019-11-18 03:50:17 +0800 CST
  • Martin Hope
    fixer1234 O "HTTPS Everywhere" ainda é relevante? 2019-10-27 18:06:25 +0800 CST
  • Martin Hope
    Kagaratsch O Windows 10 exclui muitos arquivos minúsculos muito lentamente. Algo pode ser feito para agilizar? 2019-09-23 06:05:43 +0800 CST
  • Martin Hope
    andre_ss6 Área de trabalho remota congelando intermitentemente 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney Por que colocar um ponto após o URL remove as informações de login? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    Inter Sys Como Ctrl+C e Ctrl+V funcionam? 2019-05-15 02:51:21 +0800 CST
  • Martin Hope
    jonsca Todos os meus complementos do Firefox foram desativados repentinamente, como posso reativá-los? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK É possível criar um código QR usando texto? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 Altere o nome da ramificação padrão do git init 2019-04-01 06:16:56 +0800 CST

Hot tag

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve