Reference;
http://www.perlmonks.org/?node_id=784574
用 $smtp->datasend 傳附檔內容時,因為 gmail 接收資料有長度限制,如果一次傳送大量資料會出錯。變通辦法是用 split 將資料分段送出。
use Net::SMTP::TLS;
use MIME::Lite;
$gmail_from = 'account@gmail.com';
@gmail_bcc_png = ('bcc@gmail.com');
$mail_subject = "<mail_subjuct>";
$msg = MIME::Lite->new(
From => $gmail_from,
To => $gmail_from,
Subject => $mail_subject,
Type =>'multipart/mixed',
);
$msg->attach(
Type => 'image/png',
Path => '<file full path>',
Filename => 'report1.png',
Disposition => 'attachment'
);
$smtp = new Net::SMTP::TLS(
'smtp.gmail.com',
Port => 587,
User => '<account@gmail.com>',
Password=> '<password>',
Timeout => 30
);
$smtp->mail($gmail_from);
$smtp->bcc(@gmail_bcc_png);
$smtp->data();
@tmp = split(/\n/, $msg->as_string);
foreach $line (@tmp) {
$line = $line . "\n";
$smtp->datasend( $line );
}
$smtp->dataend();
$smtp->quit;
2017年3月25日 星期六
2017年3月15日 星期三
webpage or html file transfer to image
Reference:
http://phantomjs.org/screen-capture.html
下載 PhantomJS 解壓縮,把 phantomjs.exe 加到 PATH。
把網頁轉成圖片:
1. 編輯 web_2_png.js,內容如下
var page = require('webpage').create();
page.open('http://github.com/', function() {
page.render('github.png');
phantom.exit();
});
2. 執行 phantomjs web_2_png.js 即可產生圖片
把 html 檔案轉成圖片:
1. 編輯 html_2_png.js,內容如下
var page = require('webpage').create();
page.open('file:///c:/tmp/myfile.htm', function() {
page.render('myfile.png');
phantom.exit();
});
2. 執行 phantomjs html_2_png.js 即可產生圖片
http://phantomjs.org/screen-capture.html
下載 PhantomJS 解壓縮,把 phantomjs.exe 加到 PATH。
把網頁轉成圖片:
1. 編輯 web_2_png.js,內容如下
var page = require('webpage').create();
page.open('http://github.com/', function() {
page.render('github.png');
phantom.exit();
});
2. 執行 phantomjs web_2_png.js 即可產生圖片
把 html 檔案轉成圖片:
1. 編輯 html_2_png.js,內容如下
var page = require('webpage').create();
page.open('file:///c:/tmp/myfile.htm', function() {
page.render('myfile.png');
phantom.exit();
});
2. 執行 phantomjs html_2_png.js 即可產生圖片
2017年3月13日 星期一
2017年3月11日 星期六
3com switch 4226T 異常事件記錄
狀況:
新設備設定好 IP address 後接到 3com 4226T,從別台電腦 ping 這個設備,只收到兩個 reply 然後就一直 timeout。
Try 1: 猜測是不是 IP address 衝突。把設備網路線拔掉,ping 完全沒有回應。
Try 2: router 清除 arp。狀況一樣。
Try 3: 查詢 3com 4226T MAC address table。設備接在 port 7,查詢結果居然顯示接在 port 17!見鬼了~~~~
暫時解法:
將設備的 MAC address 手動加到 port 7,用 ping 測試就正常了。
因為其他的接在這一台 3com 4226T 的網路運作都正常,找時間將這台 3com 4226T 重新開機試試看。
新設備設定好 IP address 後接到 3com 4226T,從別台電腦 ping 這個設備,只收到兩個 reply 然後就一直 timeout。
Try 1: 猜測是不是 IP address 衝突。把設備網路線拔掉,ping 完全沒有回應。
Try 2: router 清除 arp。狀況一樣。
Try 3: 查詢 3com 4226T MAC address table。設備接在 port 7,查詢結果居然顯示接在 port 17!見鬼了~~~~
暫時解法:
將設備的 MAC address 手動加到 port 7,用 ping 測試就正常了。
因為其他的接在這一台 3com 4226T 的網路運作都正常,找時間將這台 3com 4226T 重新開機試試看。
2017年3月4日 星期六
2017年3月3日 星期五
How to Change WSUS Contents to a new location
Reference:
How to Change WSUS Contents to a new location
WsusUtil.exe MoveContent E:\WSUSContent\ E:\MoveLog.Log
How to Change WSUS Contents to a new location
WsusUtil.exe MoveContent E:\WSUSContent\ E:\MoveLog.Log
2017年3月2日 星期四
連線到印表機 生效的原則 無法連接 列印佇列
新增網路印表機時出線的錯誤訊息:
連線到印表機
由於您電腦的一個生效的原則,所以您無法連接到這個列印佇列,請連絡您的系統管理員。
解法為自行安裝驅動程式。
步驟:
1. 準備印表機的驅動程式。
2. 安裝本地印表機,連接埠選 TCPIP,輸入印表機 IP address。
3. 驅動程式選擇由磁片安裝,並瀏覽到放區棟程式的目錄。
4. 安裝驅動程式後,不共享印表機
5. 再次新增網路印表機,安裝完成後可將本地印表機移除
參考:
您電腦上一個生效原則阻止你連線到這個列印佇列,請聯絡您的系統管理員
連線到印表機
由於您電腦的一個生效的原則,所以您無法連接到這個列印佇列,請連絡您的系統管理員。
解法為自行安裝驅動程式。
步驟:
1. 準備印表機的驅動程式。
2. 安裝本地印表機,連接埠選 TCPIP,輸入印表機 IP address。
3. 驅動程式選擇由磁片安裝,並瀏覽到放區棟程式的目錄。
4. 安裝驅動程式後,不共享印表機
5. 再次新增網路印表機,安裝完成後可將本地印表機移除
參考:
您電腦上一個生效原則阻止你連線到這個列印佇列,請聯絡您的系統管理員
2017年3月1日 星期三
Exchange 2010 move mailbox
How to Move Mailboxes in Exchange Server 2010
Exchange 2010 SP2 搬移 mailbox 後無法刪除原信箱,retry 次數過多造成很久才結束。
修改 C:\Program Files\Microsoft\Exchange Server\V14\Bin\MSExchangeMailboxReplication.exe.config
將 MaxCleanupRetries = "5" 改為 "1"
Reference:
MAPIEXCEPTIONUNEXPECTEDMAILBOXSTATE: UNABLE TO DELETE MAILBOX
升級到 SP3 可以解此問題。尚未升級前可以用指令刪除沒用到的信箱。
1.) Run the command to find the specific mailboxes that were impacted by this bug.
Get-MailboxStatistics -Database <MAILBOXDATABASE> | Where { $_.DisconnectReason -eq “SoftDeleted” } | fl LegacyDN, DisplayName, MailboxGUID,DisconnectReason
2.) Run this command to remove those disconnected mailboxes cleanly.
Remove-StoreMailbox –Database <MAILBOXDATABASE> –Identity <MAILBOXGUID> –MailboxState Softdeleted
Reference:
Error with moving mailbox in Exchange 2010 SP2 RU3+
Exchange 2010 SP2 搬移 mailbox 後無法刪除原信箱,retry 次數過多造成很久才結束。
修改 C:\Program Files\Microsoft\Exchange Server\V14\Bin\MSExchangeMailboxReplication.exe.config
將 MaxCleanupRetries = "5" 改為 "1"
Reference:
MAPIEXCEPTIONUNEXPECTEDMAILBOXSTATE: UNABLE TO DELETE MAILBOX
升級到 SP3 可以解此問題。尚未升級前可以用指令刪除沒用到的信箱。
1.) Run the command to find the specific mailboxes that were impacted by this bug.
Get-MailboxStatistics -Database <MAILBOXDATABASE> | Where { $_.DisconnectReason -eq “SoftDeleted” } | fl LegacyDN, DisplayName, MailboxGUID,DisconnectReason
2.) Run this command to remove those disconnected mailboxes cleanly.
Remove-StoreMailbox –Database <MAILBOXDATABASE> –Identity <MAILBOXGUID> –MailboxState Softdeleted
Reference:
Error with moving mailbox in Exchange 2010 SP2 RU3+
Exchange 2010 mail database create and mount fail
Reference:
Failed to create and mount database exchange 2010
Error message:
Couldn't mount the database that you specified. Specified database: <MailDB>; Error code: An Active Manager operation failed. Error The database action failed. Error: Operation failed with message: MapiExceptionNotFound: Unable to mount database. (hr=0x8004010f, ec=-2147221233)
. [Database: <MailDB>, Server: <MAIL server>].
SOLUTION:
Microsoft notes that the issue is related to having conflicting Domain Controller and Global Catalogue Server entries. So do the following:
1. Open EMC and right-click on “Organization Configuration”. Choose “Modify Configuration Domain Controller”.
2. Specify the domain and the DC.
3. Open EMC and right-click on “Recipient Configuration”. Choose “Modify Recipient Scope”.
4. Specify the global catalog server. Make sure it is the same as the chosen DC.
上面步驟做完後,再試一次錯誤變成
Couldn't mount the database that you specified. Specified database: <MailDB>; Error code: An Active Manager operation failed. Error Couldn't find the specified mailbox database with GUID 'b8974f86-80d6-4cfc-ae68-6b5fa110xxxx'.. [Database: <MailDB>, Server: <MAIL server>].
再次 mount MailDB 卻成功了!
Failed to create and mount database exchange 2010
Error message:
Couldn't mount the database that you specified. Specified database: <MailDB>; Error code: An Active Manager operation failed. Error The database action failed. Error: Operation failed with message: MapiExceptionNotFound: Unable to mount database. (hr=0x8004010f, ec=-2147221233)
. [Database: <MailDB>, Server: <MAIL server>].
SOLUTION:
Microsoft notes that the issue is related to having conflicting Domain Controller and Global Catalogue Server entries. So do the following:
1. Open EMC and right-click on “Organization Configuration”. Choose “Modify Configuration Domain Controller”.
2. Specify the domain and the DC.
3. Open EMC and right-click on “Recipient Configuration”. Choose “Modify Recipient Scope”.
4. Specify the global catalog server. Make sure it is the same as the chosen DC.
上面步驟做完後,再試一次錯誤變成
Couldn't mount the database that you specified. Specified database: <MailDB>; Error code: An Active Manager operation failed. Error Couldn't find the specified mailbox database with GUID 'b8974f86-80d6-4cfc-ae68-6b5fa110xxxx'.. [Database: <MailDB>, Server: <MAIL server>].
再次 mount MailDB 卻成功了!
訂閱:
文章 (Atom)