The VB6 error handling you have shared is not very good at all
FileOpen
is a likely point of failure so should be surrounded by a Try-Catch. As you are reading lines from the file should validate that the data is or is not present and code accordingly. Using the raising of an exception by the system (e.g. File Not Found) is NOT a good programming technique.
You would be better off reading the entire file and then deciding what data you have and what to do with it. E.g. see
Visual Basic .NET programming: Reading a Text File Line by Line[
^]
More general advice on trying to convert error handling from VB6 code to VB.NET is ...don't. Use the VB6 code as a proof-of-concept, a template, a set of test results but you will be better off working out what it is trying to achieve and then writing that from scratch in VB.NET. If you do that, then this perceived problem of multiple source points for an on-error target simply disappears