I like the feature of email clients *not* to automatically load content from the web. Normally the email client offers the possibility to load the external content on request - and I hardly ever do so. Why should I want to load tracking images in my email, or even worse: malware images which make use of vulnerabilities in graphics libraries?
What value does file_path contain? Does it use a UNC path?
You need to determine what value file_path contains and then see if you can open the same path in Windows Explorer. If this works fine then check if the file exists. You should check for its existence in your code.