Jump to content

Recommended Posts

Posted

Boas, já que ainda nao me conseguiram ajudar á questao colocada anteriormente, venho por a questão de outra forma.

Como faço um botao para me correm uma aplicação externa ou para correr um ficheiro .bat?

Obrigado

Vitor Oliveira

Posted

O Shell é velho e não presta, só foi mantido por compatibilidade com versões antigas

nem recomendo mesmo nada, nada usar esse comando muito velho, é um grande retrocesso

usa o System.Diagnostics

Posted

Podes tambem utilizar a API ShellExecute

Cumps

para quê ?! ainda pior !!!!

usa o System.Diagnostics

o AVI2ISO usa e abusa disso, além das threads ... que são bués

www.avi2iso.info

o programa está todo feito em VB 2005...mal grado meu 🙂

devia ter começado logo em C#....mas agora é tarde de mais...que se lixe

apenas pela simplicidade...acho o C# muito mais versátil

a m**** do VB.NET herdou muita porcaria do VB6...

o SHELL é disso exemplo

nem pensem usar essa m**** de comando

Posted

Eu não sei programar em .NET e nem sei o que é issu do System.Diagnostics, mas porque é que dizes que utilizar uma API ainda é pior? Eu sei que a conta dissu o programa esta mais ligado ao SO e pode acontecer mais erros mas não vejo grande problema em utilizar issu. E qual é a diferença entre o System.Diagnostics e a API, ja agora ficava a saber para melhorar o meu conhecimento  🙂

Cumps

Posted

o SHELL foi substancialmente melhorado em DOT.NET, mas continua a ser uma grande me***...porquê ?!

porque é mau ?!  uma pessoa nem sequer tem controle sobre os processos

com o System.Diagnostics vocês podem correr uma aplicação BAT numa janela própria/form e obter todas as informações do processo

é o que o AVI2ISO usa

peguém lá um pedaço de código do AVI2ISO :

 

 Private Sub startProcess(ByVal proc As rsProc)
        'myProcess = New Process

        myProcess = New System.Diagnostics.Process

        Try
            myProcess.StartInfo.FileName = proc.programa
            myProcess.StartInfo.Arguments = proc.args

            If proc.hide Then
                myProcess.StartInfo.WindowStyle = ProcessWindowStyle.Hidden
            Else
                myProcess.StartInfo.WindowStyle = ProcessWindowStyle.Minimized
            End If

            myProcess.Start()

            If Me.dualcore.Checked And Me.dualcore.Enabled Then
                Select Case Me.principal1.SelectedIndex
                    Case 0
                        myProcess.PriorityClass = ProcessPriorityClass.AboveNormal
                    Case 1
                        myProcess.PriorityClass = ProcessPriorityClass.BelowNormal
                    Case 2
                        myProcess.PriorityClass = ProcessPriorityClass.High
                    Case 3
                        myProcess.PriorityClass = ProcessPriorityClass.Normal
                    Case 4
                        myProcess.PriorityClass = ProcessPriorityClass.RealTime
                End Select
            End If

            myProcess.WaitForExit()
            pExitCode = myProcess.ExitCode
            myProcess.Dispose()
            myProcess.Close()

        Catch ex As Win32Exception
            MsgBox(ex.Message)

        End Try
    End Sub
Posted
usa as potencialidades novas da linguagem

Não posso porque não sei programar em .NET  ?

infelizmente só sei programar em VB, mas ja ando a tratar disso, tou farto de VB6....

Para executar outro prog dentro de uma form tenho de fazer umas quantas coisas... se com o System.Diagnostics consegue-se fazer issu apenas com umas linhas, issu é bem fixe  😛

Cumps

Posted

=====

Para executar outro prog dentro de uma form tenho de fazer umas quantas coisas... se com o System.Diagnostics consegue-se fazer issu apenas com umas linhas, issu é bem fixe

======

bem terás que alterar algumas coisas, isso terás

mas isso é outra pergunta fora do ambito desta thread 🙂

Posted
bem terás que alterar algumas coisas, isso terás

mas isso é outra pergunta fora do ambito desta thread Smiley

eu não fiz nenhuma pergunta  só disse que se apenas fossem umas linhas com o System.Diagnostics para executar um prog e colocalo dentro de uma form então issu era mt fixe  🙂

Cumps

Posted

conseguem arranjar-me um manual onde aprenda como utilizar o System.Diagnostics. apenas pretendo um botão com um código para correr um ficheiro bat ou exe que irei colocar no ambiente de trabalho. como faço isso. podem postar o código?

Obrigado

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.