>>288
この sql += input + "\r\n"; って重い処理だから、
StringBuilder sb = new StringBuilder;
...
sb.AppendFormat("{0}{1}", input, System.Environment.NewLine);
とかにしたほうがいいと思います。
なんかの事情で数千行のファイルを処理したりするときになってくると効いてくると思う。

あと、ここで例外をキャッチしないで「プロセスは・・・」っていうメッセージが出てるくらいだから、
どこか他に中途半端なキャッチし忘れがあってファイルを開きっぱなしにしている可能性も考慮してみては?