2011年7月21日 星期四

Oracle client參考要去哪裡找



--
看到、想到、說到、做到 
能夠填平大海的誓言,也比不上邁出一步的價值 
是以吾輩此生,再無任何誓言

2011年7月16日 星期六

看門貓∼

自動偵測指定目錄,當偵測到新增檔案時將檔案透過網際網路傳回中心主機上。

一、偵測檔案
>
> //偵測事件(觸發動作:備份、上傳、刪除)
>             FileSystemWatcher fsw = new FileSystemWatcher(fpath);
>             fsw.IncludeSubdirectories = false;//不監控指定目錄內的子目錄
>             //fsw.Filter = "fer.txt"; //不支援使用多個篩選器,例如 "* txt|*.doc"。
>             fsw.Created += new FileSystemEventHandler(fsw_Created);
>             //fsw.Changed += new FileSystemEventHandler(fsw_Changed);
>             fsw.EnableRaisingEvents = true;
>             Console.Read();
>
> static void fsw_Created(object sender, FileSystemEventArgs e)
>         {
>             Console.WriteLine(SaveLog(string.Format("偵測到新增檔案:{0}", e.Name)));
>             DoJob();
>         }

二、FTP傳輸
> /// <summary>
>         /// FTP上傳
>         /// </summary>
>         /// <param name="fName">檔名</param>
>         /// <returns>成功/失敗</returns>
>         private static bool PutFile(string fName)
>         {
>             SaveLog(string.Format("上傳檔案:{0}", fName));
>             string ftpstr = string.Format("ftp://{0}:{1}/{2}{3}", ftp_url, ftp_port, ftp_path, fName);
>             //Create FTP request            
>             FtpWebRequest request = (FtpWebRequest)FtpWebRequest.Create(ftpstr);
>             request.Method = WebRequestMethods.Ftp.UploadFile;
>             request.Credentials = new NetworkCredential(ftp_id, ftp_pw);
>             request.UsePassive = true;
>             request.UseBinary = true;
>             request.KeepAlive = false;
>
>             //讀入檔案
>             FileStream stream = File.OpenRead(string.Format("{0}{1}", fpath, fName));
>             byte[] buffer = new byte[stream.Length];
>
>             stream.Read(buffer, 0, buffer.Length);
>             stream.Close();
>
>             //上傳
>             try
>             {
>                 Stream reqStream = request.GetRequestStream();
>                 reqStream.Write(buffer, 0, buffer.Length);
>                 reqStream.Close();
>             }
>             catch (Exception ex)
>             {
>                 string exs = string.Format("例外狀況:{0}, Ftp string:{1}", ex.ToString(), ftpstr);
>                 Console.WriteLine(exs);
>                 SaveLog(exs);
>                 SendMail(exs);
>                 return false;
>             }
>             FtpWebResponse response = (FtpWebResponse)request.GetResponse();
>             Console.WriteLine(SaveLog(string.Format("傳輸狀態:{0}", response.StatusDescription)));
>             request.Abort();
>             return true;
>         }
>

三、Email發送
>
> /// <summary>
>         /// 發送通知
>         /// </summary>
>         /// <param name="users">收件人</param>
>         /// <param name="exmsg">例外訊息</param>
>         /// <returns></returns>
>         private static bool SendMail(string _body)
>         {
>             SmtpClient MySmtp = new SmtpClient(ssmtp, ssmtp_port);
>             MailMessage Mms = new MailMessage();
>             //MySmtp.Credentials = new NetworkCredential(mail_id, mail_pw);
>             //MySmtp.EnableSsl = true;
>
>             Mms.From = new MailAddress(mail_src);
>             foreach (string _ms in mail_rec.Split(','))
>             {
>                 if (!string.IsNullOrEmpty(_ms)) Mms.To.Add(_ms);
>             }
>             Mms.Subject = mail_sub;
>             Mms.Body = _body;
>
>             try
>             {
>                 MySmtp.Send(Mms);
>                 Console.WriteLine(SaveLog(string.Format("派送訊息通知:{0}", Mms.To.ToString())));
>             }
>             catch (Exception ex)
>             {
>                 Console.WriteLine(SaveLog(string.Format("SMTP發生例外狀況:{0}", ex.ToString())));
>                 return false;
>             }
>             return true;
>         }

四、引用
> using System.IO;
> using System.Net;
> using System.Net.Mail;
> using System.Net.NetworkInformation;


--
看到、想到、說到、做到 
能夠填平大海的誓言,也比不上邁出一步的價值 
是以吾輩此生,再無任何誓言

2011年7月14日 星期四

Mind map?

所謂十人十色∼這邊流行畫Mind map
就隨波逐流吧!

--
看到、想到、說到、做到 
能夠填平大海的誓言,也比不上邁出一步的價值 
是以吾輩此生,再無任何誓言

2011年7月3日 星期日

復古一下∼D2K

Oracle
首先確認把程式庫加入,這樣之後再開啟表單才會正常。





走走回頭路:D2K, ASP, ...

2011年6月21日 星期二

Fwd: 問題處理Memo-如何解決 Cleanthis 造成的問題

隔壁同事碰到了這個討厭的惡意軟體「Cleanthis」
電腦開啟的時候會出現Cleanthis的畫面,很像微軟的掃毒軟體。
他會讓你什麼是的無法做(連安全模式也淪陷)。
幫忙上網找了一下資料有網友提供以下步驟處理:

1. 在Cleanthis的畫面出現的時候, 請按 Safe Startup.
2. 在Scanner 的畫面出現的時候, 請按 OK 讓它做全系統掃描.
    然後從上方的選單去按 Settings.然後勾選 "Allow unpotected startup"後, 按 "Save settings"
    按 X 去結束Scanner, 如果沒有作用就多按幾次.
3. 開啟命令提示字元畫面, 執行以下指令去停止Cleanthis。
(在這裡你的工作管理員仍是無法使用的,必須用CMD處理)
    taskkill /f /im gog.exe
4. 執行 regedit 去刪除以下機碼:
    HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Winlogon
(像是:shell / xxx/gog.exe)
5. 刪除 Cleanthis的檔案, 位置如下(預設 Application Data 是隱藏的, 請記得設定顯示隱藏),       
    File name: star, install, gog, completescan
    C:\Documents and Settings\[User Name]\Application Data\ (Windows XP/2000)
    C:\Users\[User Name]\AppData\Roaming\ (Windows Vista/7)

收工~

--
看到、想到、說到、做到 
能夠填平大海的誓言,也比不上邁出一步的價值 
是以吾輩此生,再無任何誓言