sr.silva 1 Denunciar post Postado Março 2, 2009 Olá!! Tenho um arquivo com várias funções em VBScript e preciso utiliza-las no meu projeto em C#, É possível? Se sim, como? []s Compartilhar este post Link para o post Compartilhar em outros sites
quintelab 91 Denunciar post Postado Março 2, 2009 Que tipo de arquivo que é esse? Uma dll? Abraços... Compartilhar este post Link para o post Compartilhar em outros sites
sr.silva 1 Denunciar post Postado Março 2, 2009 vbscript Compartilhar este post Link para o post Compartilhar em outros sites
sr.silva 1 Denunciar post Postado Março 2, 2009 Um grande amigo me passou essa dica. using System.Diagnostics; Process p = new Process(); Porém preciso acessar uma determinada função, será que é possível? []s Compartilhar este post Link para o post Compartilhar em outros sites
Oenning 0 Denunciar post Postado Março 2, 2009 Process é para chamar um executável. Eu ja vi alguem fazendo isso, lembro que você colocava numa string seu código vbscript, mandava o C# executar. Veja se isso ajuda: http://bytes.com/groups/net-c/237617-call-vbscript-c É bem chato de ler esse site, mas talvez de alguma luz. Compartilhar este post Link para o post Compartilhar em outros sites
sr.silva 1 Denunciar post Postado Março 3, 2009 Isso mesmo! Porém não consigo executar a função. Process processo = new Process(); processo.StartInfo.FileName = @"c:\script.vbs"; processo.StartInfo.Arguments = "Importar('aplicação autonoma')"; processo.StartInfo.UseShellExecute = false; processo.Start(); processo.WaitForExit(); processo.Close(); A situação é a seguinte: - Utilizando processo.StartInfo.UseShellExecute = false; Retorna um erro informando "Executável não é um aplicativo win32 válido" - Utilizando processo.StartInfo.UseShellExecute = true; Não executa nada. []s Compartilhar este post Link para o post Compartilhar em outros sites
Oenning 0 Denunciar post Postado Março 3, 2009 Então, a classe Process é somente para executável (arquivo .exe). Veja o link que te passei. Compartilhar este post Link para o post Compartilhar em outros sites
sr.silva 1 Denunciar post Postado Março 3, 2009 hehe eu li!! Seguinte, conversando com outras pessoas surgiram outras, digamos idéias.. - Transformar o arquivo VBS para TXT, jogando todas as linhas para uma variavel? Exemplo em VB utilizando OCX (MSSCRIPT.OCX) Private Sub cmdProcessar_Click() Dim strCode As String Dim strLinhaTexto As String With scpScript .Reset strCode = "" 'Lendo o Script para a memória 'Mudei o arquivo do script para .txt Open "c:\script-alterado-para.txt" For Input As #1 strCode = "" Do While Not EOF(1) 'Lendo todas as linhas do Script para dentro da variável Line Input #1, strLinhaTexto strCode = strCode & Trim$(strLinhaTexto) & vbCrLf Loop Close #1 .AddCode strCode .Run "Importar", 9999 'onde 9999 é o número do pedido que deverá ser processado. .Reset End With End Sub []s Compartilhar este post Link para o post Compartilhar em outros sites
sr.silva 1 Denunciar post Postado Março 4, 2009 Opa! Esse tópico não está resolvido! Ainda não encontrei a solução. []s Compartilhar este post Link para o post Compartilhar em outros sites
Oenning 0 Denunciar post Postado Março 4, 2009 Engano meu, juro que li: hehe consegui. Quando der um tempinho (no almoço) vou tentar isso, ai posto a solução. Compartilhar este post Link para o post Compartilhar em outros sites
sr.silva 1 Denunciar post Postado Março 4, 2009 No problems :P Seguinte, com o código abaixo consigo chamar a função: Button1.Attributes.Add("OnClick", "Importar('mensagem')"); Sendo que no javascript é possível. Será que com VBS também é? ...resultado não consegui, talvez esteja fazendo errado. []s Compartilhar este post Link para o post Compartilhar em outros sites
Oenning 0 Denunciar post Postado Março 4, 2009 O que eu estava pensando, não funciona. Você pode chamar da mesma maneira que você fez com o javascript ai de cima, mas só vbscript só funciona no IE. Compartilhar este post Link para o post Compartilhar em outros sites
sr.silva 1 Denunciar post Postado Março 4, 2009 Ok! Porém estou tentando realmente fazer esse chamada. Se souber, pode informar? []s Compartilhar este post Link para o post Compartilhar em outros sites