dysml32.dll

●概要
　STARTTLSに対応したメール送信DLL（32ビット）です。
　「SSL/TLS（Implicit TLS）」には対応していません。

　Windows11（64bit）上でも稼働します。
　
　ファイル添付に対応しています。（DBPro除く）

　事前に、送信元のメールアドレス、パスワード（暗号化）、送信サーバー（SMTP）を
　設定ファイルdysml32.tomlに記述しておきます。
　運用パソコン上に、平文のパスワードを見える状態で設置しません。


●主な特徴とセキュリティ性能
　1. 金融機関・米国政府基準の「最高峰の暗号化（AES-256-GCM）」を採用
　　暗号化エンジンには、米国国家安全保障局（NSA）が最高機密（トップシークレット）の保護に指定し、
　　現代の国際金融網や最新の通信プロトコル（TLS 1.3）の主軸となっている「AES-256-GCM」を採用。
　　天文学的な鍵長（256ビット）による総当たり攻撃への絶対的な耐性に加え、万が一のデータ改ざんも
　　一瞬で検知・遮断する「認証付き暗号（AEAD）」の仕組みを採用しています。

　2. 厳格なスパム・不正送信防御（ディフェンス機能）の自動搭載
　　万が一、悪質な自動化プログラムや無限ループマクロ等に本DLLが組み込まれた場合でも、
　　DLL内部のセキュアなガード機能（12秒連続送信制限＆1分間最大4通制限、CC/BCCの利用禁止など）が
　　物理的にスパム化を検知し、メールの自動連打を無効化します。

　3. 安全なメモリ管理（Rust言語による開発）
　　本DLLは、C/C++特有の脆弱性（バッファオーバーフローなど）を原理的に排除した現代の安全な言語
　　「Rust」を用いて開発されています。不正なメモリアクセスによるアプリケーションの突然のクラッシュ
　　（不正終了）を極限まで低減し、ミッションクリティカルな環境下でも安定して動作します。


●DLLの配置場所
　作成したアプリケーションやマクロをスムーズに実行するため、本DLLは以下のいずれかの場所に配置してください。

① Windowsのシステムフォルダー（C:\Windows\SysWOW64）
　　※32bit DLLのため、System32ではなくSysWOW64となります。管理者の自己責任で配置してください。

② 呼び出し元プログラムの「実行ファイル（.exe）」と同じフォルダー

③ マクロを含む「Excelブック（.xlsm）」と同じフォルダー
　　※この場合、API関数の宣言（Declare Function）にフルパスを設定してください。

〇 設定ファイルdysml32.tomlは、本DLLと同じフォルダーに配置してください。


●注意
TOの「送信者名（差出人）」の表記には対応していません。
TOの 複数宛には対応していません。
CC, BCC, Reply-To には対応していません。


●パスワードの暗号化
　「パスワード処理について.txt」を参照してください。


●dysml32.tomlサンプル
（GmailのSMTPの場合）
from_address = "sample@gmail.com"
smtp_server = "smtp.gmail.com"
smtp_port = 587
encrypted_password = "QAZWSXEDCRFVtgbyhnujmik8888888BOqazwsxedcrfvtgbthn=="
license_code = "A1B2C3D4E5F6G7H8I9J0K1L2A1B2C3D4E5F6G7H8I9J0K1L2A1B2C3D4E5F6G7H8I9J0K1L2A1B2C3D4E5F6G7H8I9J0K1L2A1B2C3D4E5F6G7H8I9J0K1L2"

　※（GmailのSMTPの場合）
　　　Googleアカウントの通常パスワードではなく、事前に生成したアプリパスワード（16桁）を
　　　関数encrypt_dysmlにて、暗号化して記述


●プログラミングサンプル
　以下の言語のサンプルを付属いたします。
　本DLLを呼び出し元のプログラム（Excel VBAやC++など）から利用する場合の、構成例です。
　
・VBA（32bit）
　　　bas_dysml32.bas
　　　※Microsoft Excel(32bit) 、Microsoft Access(32bit) のVBAサンプルモジュールです。
・C++（32bit）
　　　sample.cpp, dysml32.h, dysml32.lib, dysml32.dll.lib
　　　※C++でビルドする際は、必ずプロジェクトの設定を「x86（32bit）」ターゲットに指定してください。
　　　　x64（64bit）設定では呼び出し時にエラー（LNKまたはランタイムエラー）となります。
・DBPro　V4.5
　　　SendMail.dpl


●ライセンスのご登録
　Vector社のベクター・レジサービスで購入をお願いします。
　「作者生成テキストキータイプ」を使用しております。
　https://www.vector.co.jp/swauth/man/help/ps_key2.html#03

　その他、ライセンス設定等についてのご質問は、開発者へ直接お問合せください。


●その他の情報
Gmail「16桁のアプリパスワード」の取得方法（2026年9月現在）
① Googleアカウントの設定
　「セキュリティ」から2段階認証を有効化
②サイトhttps://myaccount.google.com/apppasswords
　「アプリパスワード」を選択し、用途（例：メール、iPhone、WordPressなど）を指定して生成

