2011-11-16 2 views
0

확인 개체의 인스턴스로 설정되지 않았습니다 : 개체 참조가 개체의 인스턴스로 설정되지 않았습니다.Process.Start를 System.nullreferenceexception : 개체 참조가 나는 내가 System.nullreferenceexception를 얻을 수 있지만 그것을 시작하려고하면 나는 다음과 같은 매개 변수 <p></p>와 프로세스를 시작하려고 있도록

무엇이 잘못 되었나요?

Dim exepath As String = Application.StartupPath + "\bin\ffmpeg.exe" 
    Dim sr As StreamReader 
    Dim cmd As String = " -i """ + input + """ -ar 22050 -y """ + output + """" 
    Dim ffmpegOutput As String 
    proc.StartInfo.FileName = exepath 
    proc.StartInfo.Arguments = cmd 
    proc.StartInfo.UseShellExecute = False 
    proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden 
    proc.StartInfo.RedirectStandardError = True 'redirect ffmpegs output 
    'to our application 
    proc.StartInfo.RedirectStandardOutput = True 'we don’t really need this 
    proc.StartInfo.CreateNoWindow = True 
    proc.Start() 
+1

당신이 보여준 코드는'NullReferenceException'을 던질 수 없습니다. 코드에서 뭔가 더 이상 작동하지 않습니다. –

답변

0

는 귀하의 StreamReader가 초기화되지 않습니다

Dim sr As StreamReader 

당신이 코드에서 더 furthur를 사용하기 전에 초기화하는 확인합니다.

편집 :

당신은 예외가 proc.Start()에 던져되도록 지정하기 때문에, 나는 ProcessStartInfo를 선언을 제안하고, 예를 들어 Process.Start()

와 함께 사용할 것 :

Dim l As New ProcessStartInfo 
l.FileName = exepath 
' ... 
Process.Start(l) 
+0

정보 주셔서 감사합니다. :하지만 오류는 proc.start에서 발생합니다. –

+0

@ImranAhmed : 내 대답 편집을 참조하십시오. 그래도 도움이되지 않으면 질문에 코드를 추가하십시오. – MichaelS

+0

도움을 주셔서 감사합니다 ... 나는 그걸 작동시킬 수있었습니다! 본질적으로, 문제는 내가 내 프로세스를 전역으로 선언하고 프로세스가 아닌 새로운 프로세스로 희미한 proc으로 수행한다는 것이 었습니다 ... –