Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa noite,
estou desenvolvendo um programa para enviar arquivos para o google code, porem não estou conseguindo finalizar o programa.
Para enviar os dados eu estou fazendo assim:
WebBrowser1.OleObject.Document.all.Item('summary', 0).value := Edit4.Text;
WebBrowser1.OleObject.document.all.item('file',0).value := Edit3.Text;
WebBrowser1.OleObject.Document.all.Item('btn', 0).Click;
O item "summary e btn" eu consigo inserir os dados, agora o file, que é onde eu coloco o arquivo para enviar não estou conseguindo.
O input que está na página do google:
<input name="file" size="35" style="width: auto;" id="filefield" onchange="checksubmit()" onclick="_acrob(null);checksubmit()" onfocus="_acrob(null)" type="file">
Com o input dessa forma eu não estou conseguindo inserir os dados do meu edit no input.
Agora se eu tivesse o input dessa forma, eu consigo inserir os dados do edit no input.
<input name="file" size="35" type="file">
Fico no aguardo de alguma dica !
Eu resolvi meu problema de maneira meio grosseira... eu fiz o seguinte:
teria que inserir os dados no campo tipo "file", como texto não estava indo e não encontrava nada na net para me ajudar, então ao invés dele jogar o texto do label5.caption para o campo tipo file no webbrowser ele clica no item como se fosse indicar manualmente o arquivo, mas então ele copia para o clipboard o texto do label5 para o clipboard e então cola 1 segundo depois de clicar no botão, aí então simula o pressionamento do enter, sendo assim o arquivo foi selecionado como seria manualmente. Se ainda não resolveu seu problema me adicione ou mande um email para studiocasagrande@hotmail.com
Abraços
Clipboard.AsText := label5.Caption;
{o texto pode estar em ma variavel ou arquivo}
keybd_event(VK_CONTROL, 0, KEYEVENTF_EXTENDEDKEY or 0, 0);
keybd_event(86, 0, 0, 0);
{86 e codigo da tecla Vvc pode usar outras teclas tbm}
keybd_event(VK_CONTROL, $45, KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP, 0);
keybd_event(VK_RETURN, 0, KEYEVENTF_EXTENDEDKEY or 0, 0);
keybd_event(86, 0, 0, 0);
{86 e codigo da tecla Vvc pode usar outras teclas tbm}
keybd_event(VK_RETURN, $45, KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP, 0);
timer1.Enabled := false;
Dê uma lida neste site.
Você também pode dar uma olhada neste tópico.
[]'s