0

SmtpClient を使用して電子メールを送信する C# アプリがあります。SmtpClient を使用する実際のコードは dll にあり、すべての構成 (smtp サーバー、ユーザー名、パスワードなど) は DB に保存されます。

dll は、コンソール アプリケーションと GUI アプリケーションによって消費されます。

私の問題は次のとおりです。GUI アプリケーションによって呼び出されると、電子メールは正しく送信されます。コンソール アプリケーションによって呼び出された場合、電子メールは送信されません。

smtp 構成は同じです (ログで確認)。サーバーは、ファイアウォールが無効になっている Windows 2012 R2 です。Send メソッドによって、またはその前に例外が発生することはありません。

Network Monitor を使用して確認しましたが、コンソール アプリは smtp トラフィックをまったく生成していません。

IT 担当者は、他のファイアウォールや制限ポリシーはないと言っています。

誰でも確認することを提案できますか?

電子メールを呼び出すコードは、GIU とコンソールで同じで、次のように単純です。

var configuration = AppCore.Configuration.Get();
var check = new AppCore.CheckManager.DataQuality(configuration);
check.DoProcess();

AppCore は Dll です。

4

0 に答える 0