2022年1月29日 星期六

[研究]Jenkins + Fortify SCA,因 Visual Studio 2019 升級 2022,變更 MSBuild 目錄

[研究]Jenkins + Fortify SCA,因 Visual Studio 2019 升級 2022,變更 MSBuild 目錄

2022-01-29

Git 簽入時,Jenkins 呼叫 Fortify SCA 和 MSBuild,結果出現

FATAL: C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin\amd64\ doesn't exist

解決方法:

登入 Jenkins 後,點左邊「管理 Jenkins」,選中央「Global Tool Configuration」,找到 MSBuild 項目。把

C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin\amd64\

改為

C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64


(完)

相關

[研究]Jenkins作業(Job)組態的Dependency-Track(DT)設定
https://shaurong.blogspot.com/2022/09/jenkinsjobdependency-trackdt.html

[研究]Git上傳、Jenkins自動編譯、發佈 ASP.NET WebForms方案/專案到目的網站根目錄
https://shaurong.blogspot.com/2022/09/gitjenkins-aspnet-webforms.html

[研究][ASP.NET]MSBuild 17.3.1 語法參數說明
https://shaurong.blogspot.com/2022/09/aspnetmsbuild-1731.html

[研究][BAT]從Jenkins拷貝 Fortify SCA 報告
https://shaurong.blogspot.com/2022/03/batjenkins-fortify-sca.html

[研究]Jenkins 找不到 .NET SDK 'Microsoft.NET.Sdk.Web'
https://shaurong.blogspot.com/2022/02/jenkins-net-sdk-microsoftnetsdkweb.html

[研究]Jenkins : error MSB4100 條件 必須評估為布林值
https://shaurong.blogspot.com/2022/02/jenkins-error-msb4100.html

[研究]Jenkins + Fortify SCA,因 Visual Studio 2019 升級 2022,變更 MSBuild 目錄
https://shaurong.blogspot.com/2022/01/jenkins-fortify-sca-visual-studio-2019.html

[研究]疑似 Fortify SCA 或 Jenkins 產生的殘檔
https://shaurong.blogspot.com/2021/11/fortify-sca-jenkins.html

[研究][Gitea + Jenkins + Fortify SCA]此專案參考這部電腦上所缺少的 NuGet 套件。請啟用 NuGet 套件還原
https://shaurong.blogspot.com/2021/08/gitea-jenkins-fortify-sca-nuget-nuget.html

[研究] OWASP Dependency-Track 4.2.2 第三方元件安全管理安裝 (Ubuntu 20.04.2 LTS x64)
https://shaurong.blogspot.com/2021/07/owasp-dependency-track-422-ubuntu-20042.html

[研究]Jenkins 2.289.2-1.1 stable 安裝(CentOS 8.4 x64)
https://shaurong.blogspot.com/2021/07/jenkins-22892-11-stable-centos-84-x64.html

[研究] Jenkins 建置失敗
https://shaurong.blogspot.com/2021/04/jenkins.html

[研究] Jenkins 2.190.3 舊主機搬移到新主機(Win2019)
https://shaurong.blogspot.com/2019/12/jenkins-21903-win2019.html

[研究] Jenkins 2.121.1 LTS + JDK 8 + Maven 3.5.3 安裝 (Windows 2016)
https://shaurong.blogspot.com/2018/06/jenkins-21211-lts-jdk-maven-windows-2016.html

[研究] Jenkins 2.121.1 LTS + JDK 安裝 (Windows 2016)
https://shaurong.blogspot.com/2018/06/jenkins-21211-lts-jdk-windows-2016.html

[研究] Jenkins 2.128 Weekly 安裝 (Windows 2016)
https://shaurong.blogspot.com/2018/06/jekins-2128-weekly-windows-2016.html

[研究] Jenkins 2.121.1 LTS 安裝 (Windows 2016)
https://shaurong.blogspot.com/2018/06/jekins-21211-lts-windows-2016.html

[研究] Jenkins 2.68.1-1 安裝 (CentOS 7.3 x64)
https://shaurong.blogspot.com/2017/07/jenkins-2681-1-centos-73-x64.html

[研究] Jenkins 1.635 安裝 (CentOS 7.1 x64)
https://shaurong.blogspot.com/2015/10/jenkins-1635-centos-71-x64.html

[研究] Jenkins 1.635 安裝 (Windows 2012 R2)
https://shaurong.blogspot.com/2015/10/jenkins-1635-windows-2012-r2.html


[研究] Fortify SCA 報告 .ftp 無法快按滑鼠鍵兩下開啟

[研究] Fortify SCA 報告 .ftp 無法快按滑鼠鍵兩下開啟

2022-01-29

Micro Focus Static Code Analyzer 如果同時安裝兩套或多套,一套移除時,.fpr的檔案關聯會被移除,導致報告 .ftp 無法快按滑鼠鍵兩下開啟。

可匯入「登錄編輯程式」(Regedit.exe) 的 .reg 檔案解決。內容如下:


Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.fpr]
@="fprfile"

[HKEY_CLASSES_ROOT\fprfile]
@="fprfile"

[HKEY_CLASSES_ROOT\fprfile\DefaultIcon]
@="C:\\Program Files\\Fortify\\Fortify_SCA_and_Apps_21.2.2\\Core\\resources\\icons\\fpr.ico"

[HKEY_CLASSES_ROOT\fprfile\shell]

[HKEY_CLASSES_ROOT\fprfile\shell\Open with Fortify AWB]

[HKEY_CLASSES_ROOT\fprfile\shell\Open with Fortify AWB\command]
@="\"C:\\Program Files\\Fortify\\Fortify_SCA_and_Apps_21.2.2\\bin\\auditworkbench.cmd\" \"%1\""


(完)

2022年1月28日 星期五

[研究] Micro Focus Fortify SCA 21.2.2安裝 (Wnidows 2019)

[研究] Micro Focus Fortify SCA 21.2.2安裝 (Wnidows Server 2019)

2022-01-28

SCA : Static Code Analyzer 原始碼掃描工具 (源碼掃描工具)

Click 圖片可看 100% 尺寸。

(下圖) v21.2.2 版於 2021-12-17 釋出。




(下圖)因為 Fortify_SCA_and_Apps_21.2.2_Windows.zip 解壓後,發現比 v21.1.2版多了 LocalLicenseServer64.msi,記錄一下安裝過程。( fortify.license 是另外拷貝過來的)

















報告的語系切換,請參考,比對過方法相同。

[研究] Micro Focus Fortify SCA 18.20 3.切換成繁體中文語系
https://shaurong.blogspot.com/2018/11/micro-focus-fortify-sca-1820-3.html

(完)

相關

[研究] Micro Focus Fortify SCA 21.2.2安裝 (Wnidows 2019)

[研究] Micro Focus Fortify Static Code Analyzer 18.20 下載
https://shaurong.blogspot.com/2018/11/micro-focus-fortify-static-code.html

[研究] Micro Focus Fortify SCA 18.20 2.安裝 (Wnidows 2016)
https://shaurong.blogspot.com/2018/11/micro-focus-fortify-sca-1820-2-wnidows.html

[研究] Micro Focus Fortify SCA 18.20 3.切換成繁體中文語系
https://shaurong.blogspot.com/2018/11/micro-focus-fortify-sca-1820-3.html

[研究]展開收合(手風琴、Accordion)效果 (BootStrap 5)

[研究]展開收合(手風琴、Accordion)效果 (BootStrap 5)

2022-01-28

Accordion · Bootstrap v5.0
https://getbootstrap.com/docs/5.0/components/accordion/

右上角下拉選單,Bootstrap v5.0改選v3.4.1或v.4.6.x 都沒有Accordion畫面,可能舊版不支援。

折疊(Collapse)

Visual Studio 2022 v17 + Web Application + WebForm + ASP.NET + C# 上測試

Default.aspx


<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="WebApplication5.Default" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title></title>
    <link href="Content/bootstrap.css" rel="stylesheet" />
    <script src="Scripts/bootstrap.js"></script>
</head>
<body>
    <form id="form1" runat="server">
        <div>
            <div class="accordion" id="accordionExample">
                <div class="accordion-item">
                    <h2 class="accordion-header" id="headingOne">
                        <button class="accordion-button" type="button" data-bs-toggle="collapse" data-bs-target="#collapseOne" aria-expanded="true" aria-controls="collapseOne">
                            手風琴項目 #1
                        </button>
                    </h2>
                    <div id="collapseOne" class="accordion-collapse collapse show" aria-labelledby="headingOne" data-bs-parent="#accordionExample">
                        <div class="accordion-body">
                            這是第一個手風琴項目的本體。它預設顯示,直到有合適 class 的折疊插件(collapse plugin)被增加,class 控制每個 HTML 元素的外觀,class 透過 CSSS 控制顯示和隱藏,class 名稱為 .accordion-body。
                        </div>
                    </div>
                </div>
                <div class="accordion-item">
                    <h2 class="accordion-header" id="headingTwo">
                        <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo">
                            手風琴項目 #2
                        </button>
                    </h2>
                    <div id="collapseTwo" class="accordion-collapse collapse" aria-labelledby="headingTwo" data-bs-parent="#accordionExample">
                        <div class="accordion-body">
                            這是第二個手風琴項目的本體。它預設隱藏,直到有合適 class 的折疊插件(collapse plugin)被增加,class 控制每個 HTML 元素的外觀,class 透過 CSSS 控制顯示和隱藏,class 名稱為 .accordion-body。
                        </div>
                    </div>
                </div>
                <div class="accordion-item">
                    <h2 class="accordion-header" id="headingThree">
                        <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#collapseThree" aria-expanded="false" aria-controls="collapseThree">
                            手風琴項目 #3
                        </button>
                    </h2>
                    <div id="collapseThree" class="accordion-collapse collapse" aria-labelledby="headingThree" data-bs-parent="#accordionExample">
                        <div class="accordion-body">
                            這是第三個手風琴項目的本體。它預設藏,直到有合適 class 的折疊插件(collapse plugin)被增加,class 控制每個 HTML 元素的外觀,class 透過 CSSS 控制顯示和隱藏,class 名稱為 .accordion-body。
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </form>
</body>
</html>

(完)

相關

[研究] 頁籤(tab) (HTML + jQuery 3.5.1 + Bootstrap 3.4.1)
https://shaurong.blogspot.com/2021/02/tab-html-jquery-351-bootstrap-341.html

[研究] 頁籤(tab) (HTML + CSS3)
https://shaurong.blogspot.com/2021/02/tab-html-css3.html

[研究] 頁籤(tab) ( HTML + CSS + JavaScript + jQuery + jQuery UI)
https://shaurong.blogspot.com/2021/02/tab-html-css-javascript-jquery-jquery-ui.html

[研究] 頁籤(tab) (HTML+CSS+JavaScript+jQuery)
https://shaurong.blogspot.com/2021/02/tab-htmlcssjavascriptjquery.html

[研究] 頁籤(tab) (HTML+CSS+JavaScript)
https://shaurong.blogspot.com/2021/02/tab-htmlcssjavascript.html

2022年1月27日 星期四

[研究]檢視記錄檔大小上限值-正確方法 (Windows 2019)

[研究]檢視記錄檔大小上限值-正確方法 (Windows 2019)

2022-01-27

環境:Windows Server 2019

Click 圖片可看100%尺寸

(下圖)執行 rsop.msc (原則結果組)


(下圖)畫面顯示「記錄檔大小上限」是 50000 KB,實際是因為欄位顯示寬度,不是真實值

(下圖)局部放大

(下圖)執行「事件檢視器」

(下圖) 真實值是 5000000 KB ( 5GB),部分0在上面畫面沒顯示出來

註:敝人抓圖沒注意到,第2,3張是選「安全性」,第5張選「系統」,但實際敝人這2者設定值相同,讀者可不用太在意此錯誤。

(完)

2022年1月22日 星期六

[研究]AOC 43U6205數位電視接電腦,解決畫面被裁切問題

[研究]AOC 43U6205數位電視接電腦,解決畫面被裁切問題

2022-01-22

美國AOC 43型 4K HDR聯網液晶顯示器43U6205

這台數位電視接電腦顯示Windows畫面時,周邊無法完全顯示。

解決方法:按下遙控器上「設定」按鈕(圖示是齒輪),在電視畫面上選「畫面」「高級設置」「電腦模式」。


(玩)

相關

[研究]AOC 43U6205數位電視+數位天線,看無線數位電視台設定
https://shaurong-other.blogspot.com/2022/01/aoc-43u6205_22.html

[研究]AOC 43U6205數位電視接電腦,解決畫面被裁切問題
https://shaurong-other.blogspot.com/2022/01/aoc-43u6205.html

[研究]AOC 43U6205數位電視+HAKOmini電視盒,看網路電視、影片
https://shaurong-other.blogspot.com/2022/01/aoc-43u6205hakomini.html

[研究][ASP.NET][WebForm]連線 Oracle Database 出現「ORA-12154: TNS: 無法解析指定的連線 ID」

[研究][ASP.NET][WebForm]連線 Oracle Database 出現「ORA-12154: TNS: 無法解析指定的連線 ID」

2022-01-20

NuGet 安裝 Oracle.ManagedDataAccess 21.4.0

Web.config 中設定 


	<connectionStrings>
		<clear />
		<add name="MyConnectionString" connectionString="Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=資料庫IP)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=服務名稱)));Persist Security Info=True;User ID=帳號;Password=密碼;"
		 providerName="Oracle.ManagedDataAccess.Client"/>
	</connectionStrings>

****************************************

2018年的問題不確定改進的如何,暫時貼過來參考

同一台電腦上,Oracle Database 系列的,不要同時安裝。( Java , MySQL 算是另外一個系列)

要安裝 ODACwithODT (ODTwithODAC122011.zip ) 之前,請把 NuGet 安裝的 Oracle Database 相關元件移除;

自己手動下載安裝的其他 Oracle Database 系列任何軟體都移除。

安裝時候,後安裝的會覆蓋部分共同設定,但部分又有另有新的,導致舊設定失效;

移除的時候,共同的部分可能被移除,導致仍留在電腦中的無法100%正常運作,且移除也有問題。

下面不可同時安裝 (可能還有其他的軟體也不要共存),要安裝,請把其他先移除

* ODAC (ODTforVS2017_122011.exe) : Oracle Data Access Components,只支援 Visual Studio Runtime 執行時期,不支援設計時期,SqlDataSource會抓不到

* Oracle Data Access Components (ODAC) and NuGet Downloads (ODTforVS2017_122011.exe),同上

* ODACwithODT (  ODTwithODAC122011.zip 推薦安裝) : ODAC 12.2c Release 1 and Oracle Developer Tools (ODT) for Visual Studio (12.2.0.1.1)

https://www.oracle.com/technetwork/topics/dotnet/utilsoft-086879.html

* Oracle Database Client,不含 for Visual Studio 設計時期支援

* Oracle Database Server,不含 for Visual Studio 設計時期支援

* 就算用 NuGet 安裝,也會毀掉現有的環境設定

(完)

相關

[研究]ASP.NET WebForm 存取 Oracle Database
http://shaurong.blogspot.com/2018/07/aspnet-webform-oracle-database.html


[研究][ASP.NET][C#][WebForm]使用hotmail寄信 (System.Net.Mail)

[研究][ASP.NET][C#][WebForm]使用hotmail寄信 (System.Net.Mail)

2022-01-22
2022-06-22 補

********************************************************************************

Outlook.com 的 POP、IMAP 和 SMTP 設定
https://support.microsoft.com/zh-tw/office/outlook-com-%E7%9A%84-pop-imap-%E5%92%8C-smtp-%E8%A8%AD%E5%AE%9A-d088b986-291d-42b8-9564-9c414e2aa040

SMTP 伺服器名稱 smtp-mail.outlook.com

SMTP 埠 587

SMTP 加密:STARTTLS

********************************************************************************

2022-08-15補

hotmail 似乎做了某些調整,程式不能用了。調整疑似在2022/08/12, 8/13 或 8/14 調整的,上周四 or 五印象仍可用。

程式寄信回成功,但收不到信。用瀏覽器登入 hotmail,寄信,可以收到。

查知 SMTP 從 smtp-mail.outlook.com 變更為:伺服器名稱: smtp.office365.com,連接埠: 587,加密方法: STARTTLS;修改伺服器名稱和連接埠後測試 ( StartTLS 不知要如何改)。程式寄信回成功,但仍收不到信,暫時不知道還要如何改。

Google 查 SmtpClient 好像不支援 StartTLS。

********************************************************************************

Visual Studio 2022 + ASP.NET + C# + Web Application  + WebForm

using System;
using System.Net.Mail;

namespace WebApplication1
{
    public partial class Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            try
            {
                //  MailMessage ( FromEmailAddress, ToEmailAddress)
                MailMessage message = new MailMessage("名稱<XXX@hotmail.com>", "收件者信箱");//MailMessage(寄信者, 收信者)
                message.IsBodyHtml = true;
                message.BodyEncoding = System.Text.Encoding.UTF8;//E-mail編碼
                message.SubjectEncoding = System.Text.Encoding.UTF8;//E-mail編碼
                message.Priority = MailPriority.Normal;//設定優先權
                message.Subject = "Test3"; //E-mail主旨
                message.Body = "Test3";//E-mail內容

                SmtpClient MySmtp = new SmtpClient("smtp-mail.outlook.com");//設定gmail的smtp

                //System.Net.NetworkCredential(帳號,密碼),hotmail的帳號是整的Email,不是只有@前面的
                MySmtp.Credentials = new System.Net.NetworkCredential("XXX@hotmail.com", "密碼");
                
                MySmtp.EnableSsl = true;//開啟ssl
                MySmtp.Send(message);
                MySmtp = null;
                message.Dispose();
                Label1.Text = "Send !";
            }
            catch (Exception ex)
            {
                Label1.Text = "不明錯誤。";
                if (ex!=null)
                {
                    Label1.Text = ex.Message.ToString();
                }
            }
        }
    }
}

**********

2022-06-22補

如果收件者有多人,

MailMessage message = new MailMessage("XX網站<XXX@hotmail.com>", address);

改成

message.From = new MailAddress("XXX@hotmail.com", "XX網站", System.Text.Encoding.UTF8);
message.Subject = mysubject; //E-mail主旨 if (!string.IsNullOrEmpty(toAddressList.Trim())) { toAddressList = toAddressList.Replace(" ", ""); foreach (var item in toAddressList.Trim().Split(',', ';')) { //var to = new SecureMailAddress(item); //message.To.Add(new SecureMailAddress(item)); message.To.Add(new MailAddress(item)); } }

修改後結果

#region == public static string SendNoCertMailByHotmail(string mysubject, string myContent, string toAddressList, string ccAddress, string bccAddress) ==
private static string SendNoCertMailByHotmail(string mysubject, string myContent, string toAddressList, string ccAddress, string bccAddress)
{
    string localIP = Common.GetLocalIPv4(); // 傳回非 127.0.0.1、192.168.x.x 的 IP
    string sendMailResult = ""; //預設成功,回傳空字串
    try {
        //string emailContent = @"【此為系統自動發信,請勿直接回信。】<br />【若收到重複信不用理會,因Mail Server間沒有100%相容。】<br />" + myContent;
        //string emailContent = @"【此為系統自動發信,請勿直接回信。】<br />" + myContent;
        string emailContent = @"信件於 " + DateTime.Now.ToString() + " 寄出。<br />【此為系統自動發信,請勿直接回信。】<br />" + myContent;

        //  MailMessage ( FromEmailAddress, ToEmailAddress)
        //  MailMessage (寄信者Email, 收信者Email)
        //public MailMessage ();
        //public MailMessage (System.Net.Mail.MailAddress from, System.Net.Mail.MailAddress to);
        //public MailMessage (string from, string to);
        //public MailMessage (string from, string to, string subject, string body);
        if (toAddressList == "")
            return "沒有收件者";
        //MailMessage message = new MailMessage("XXX網站<XXX@hotmail.com>", address);
        message.From = new MailAddress("XXX@hotmail.com", "XXX網站", System.Text.Encoding.UTF8);
        message.Subject = mysubject; //E-mail主旨
        if (!string.IsNullOrEmpty(toAddressList.Trim()))
        {
            toAddressList = toAddressList.Replace(" ", "");
            foreach (var item in toAddressList.Trim().Split(',', ';'))
            {
                //var to = new SecureMailAddress(item);
                //message.To.Add(new SecureMailAddress(item));
                message.To.Add(new MailAddress(item));
            }
        }

        message.IsBodyHtml = true;
        message.BodyEncoding = System.Text.Encoding.UTF8;//E-mail編碼
        message.SubjectEncoding = System.Text.Encoding.UTF8;//E-mail編碼
        message.Priority = MailPriority.Normal;//設定優先權
        
        message.Subject = mysubject + "(" + localIP + ")" ; //E-mail主旨,非正式機加上IP,分辨一下開發機 or 測試機
        message.Body = emailContent;//E-mail內容
        // message.ReplyTo 過時
        message.ReplyToList.Add(new MailAddress("回信者@abcdef.com.tw", "XXX網站"));
        //public MailAddress (string address);
        //public MailAddress (string address, string displayName);
        //public MailAddress (string address, string displayName, System.Text.Encoding displayNameEncoding);
        //message.From = new MailAddress("XXX@hotmail.com", "XXX網站");
        //message.To.Add(address);
        //if (address != "")
        //    message.To.Add(address);
        //else
        //    return "沒有收件者";
        if (ccAddress!="")
            message.CC.Add(ccAddress);
        if (bccAddress !="")
            message.Bcc.Add(bccAddress);

        SmtpClient MySmtp = new SmtpClient("smtp-mail.outlook.com");//設定smtp

        //gmail的帳號密碼System.Net.NetworkCredential(帳號,密碼)
        MySmtp.Credentials = new System.Net.NetworkCredential("XXX@hotmail.com", " Nccst2016$");

        MySmtp.EnableSsl = true;//開啟ssl
        MySmtp.Send(message);
        MySmtp = null;
        message.Dispose();
        //Label1.Text = "成功。";
        //sendMailResult = "OK。已送出郵件" + DateTime.Now.ToString();
    }
    catch (Exception ex)
    {
        //throw;
        // 胡淯婷 或廠商 會亂填 Email 測試
        sendMailResult = "寄信給" + toAddressList + "失敗,不明錯誤。";
        if (ex != null)
        {
            sendMailResult = "寄信給" + toAddressList + "失敗。" + ex.Message.ToString();
        }
        return sendMailResult;
    }
    return sendMailResult;
    // --------------------------------------------------------------------------------
}
#endregion


(完)

相關

[研究] 用 Outlook 2010 收發 Hotmail / Outlook.com 信件(2016年)(一)

http://shaurong.blogspot.com/2016/01/outlook-2010-hotmail-outlookcom-2016.html


[研究][C#] Gmail 寄信 (用 System.Net.Mail )

[研究][C#] Gmail 寄信

2016-04-11
2018-03-09, 2022-01-22更新

Visual Studio 2022 + ASP.NET + Web Application  + WebForm 

using System.Net.Mail;
public void send_gmail(string msg, string mysubject, string address)
{
try
            {
            
//  MailMessage ( FromEmailAddress, ToEmailAddress)
 MailMessage message = new MailMessage("abc@yahoo.com.tw", address);//MailMessage(寄信者, 收信者)
 message.IsBodyHtml = true;
 message.BodyEncoding = System.Text.Encoding.UTF8;//E-mail編碼
 message.SubjectEncoding = System.Text.Encoding.UTF8;//E-mail編碼
 message.Priority = MailPriority.Normal;//設定優先權
 message.Subject = mysubject;//E-mail主旨
 message.Body = msg;//E-mail內容

 SmtpClient MySmtp = new SmtpClient("smtp.gmail.com", 587);//設定gmail的smtp

        //gmail的帳號密碼System.Net.NetworkCredential(帳號,密碼)
 MySmtp.Credentials = new System.Net.NetworkCredential("abcd@gmail.com", "1234");
MySmtp.EnableSsl = true;//開啟ssl MySmtp.Send(message); MySmtp = null; message.Dispose();
Label1.Text = "Send !";
            }
            catch (Exception ex)
            {
                Label1.Text = "不明錯誤。";
                if (ex!=null)
                {
                    Label1.Text = ex.Message.ToString();
                }
            }
}

send_gmail("測試內容", "測試主旨標題", "def@pchome.com.tw,ghi@hotmail.com");//呼叫send_gmail函式測試

********************************************************************************
2018-03-09更新

上面程式以前可以用,今天要用發現有問題

錯誤訊息
System.Net.Mail.SmtpException: 'SMTP 伺服器需要安全連接,或用戶端未經驗證。 伺服器回應為: 5.5.1 Authentication Required. Learn more at'



低安全性應用程式

********************
2022-01-22
管控愈來愈嚴格




已封鎖低安全性應用程式
您想使用的應用程式不符合 Google 的安全性標準,因此我們已封鎖該應用程式。
某些應用程式和裝置採用的登入技術安全性較低,將導致您的帳戶出現安全漏洞。建議您停用這類應用程式的存取權;當然,您也可以選擇啟用存取權,但請瞭解相關風險。如果您並未使用這項設定,Google 會自動將其關閉。
瞭解詳情


********************************************************************************
2024-06-18 補




(完)

2022年1月5日 星期三

[研究]Outlook 2019出現「作業 '傳送中 - xxx@xxx.xxx.tw'已報告錯誤 (0x80040115) : '我們無法完成此動作,因為目前無法連絡伺服器。請稍後再試。'」

[研究]Outlook 2019出現「作業 '傳送中 - xxx@xxx.xxx.tw'已報告錯誤 (0x80040115) : '我們無法完成此動作,因為目前無法連絡伺服器。請稍後再試。'」

2022-01-05

信件成功寄出給自己,但是收不到,Outlook右下顯示「所有資料夾都是最新狀態」,測試2台都如此,隔一陣子一台出現

作業 '傳送中 - xxx@xxx.xxx.tw'已報告錯誤 (0x80040115) : '我們無法完成此動作,因為目前無法連絡伺服器。請稍後再試。'

MIS測試寄給自己,說正常,又隔會,敝人發給自己的測試信收到了,但是隔了4分鐘。

具體原因不明,Exchange Server 剛好 Busy 了幾分鐘嗎?平常寄給自己的信是可以立刻收到。

紀錄一下此事。

(完)