2014年3月10日 星期一

檢舉亂標註人的Facebook粉絲專頁步驟,以及防止自己被亂標註的方法

最近有很多FB的好友被不知名的粉絲專頁標註於照片之上,那些專頁通常都是賣東西的,讓好友以及好友的好友造成很大的困擾,以為是被盜帳號了。依個人的經驗,提供檢舉這種專頁的步驟如下

1. 進入該粉絲專頁
1

2. 點擊齒輪圖示,選取「檢舉粉絲專頁」
2 

3. 選擇「這騷擾到我或我認識的人」
3

4. 勾選「向 Facebook 提出檢舉」
4

5. 完成
5 

 

同場加映:防止自己被亂標註的方法

1. 於 Facebook 網頁的右上角,點擊齒輪圖示,選擇「設定」
6

2. 左邊點選「動態時報與標籤」
7 

3. 點擊「誰可以在我的動態時報新增貼文?」項目之下的第二個,紅框處選擇為「啟用」
8

4. 點擊「我該如何管理別人加上的標籤以及標籤建議?」項目之下的第一個,紅框處選擇為「啟用」
9

這樣子任何人要在你的動態時報中貼文或是將你標註在照片中,都要先經過你的核准才能貼出去或是標註

2013年6月10日 星期一

ASP.Net 隱藏 RadioButtonList 裡的項目

ASP.Net 的 RadioButtonList 是一個蠻好用的控制項,用了他就不用拉好幾個 RadioButton 了。不過有一個困擾的地方就是他的 Item 並沒有 Visible 的屬性,使得有時想要隱藏某些項目時感覺有些困擾

其實,沒有 Visible 屬性也沒有關係,他有 Arrtibutes 屬性可以用,只要用
RadioButtonList1.Items[0].Attributes.Add("style", "display:none");
或是
RadioButtonList1.Items[0].Attributes["style"] = "display:none";
就可以隱藏第 0 個 item 了

提供給大家參考

2013年6月7日 星期五

在 Windows Server 2003 上執行 ASP.Net 網站,無法呼叫 MSDTC 的注意事項

  1. 確定 MSDTC 服務確實有啟動
    可以到控制台的服務,或是於 cmd 視窗下輸入 sc query msdtc 來檢查
    看到 STATE 是 4 RUNNING 就表示 MSDTC 正常服務中
    2013-06-07_163511
  2. 確定 IIS 有安裝「啟用網路 DTC 存取」
    這一點常常會漏勾喔
     2013-06-07_163826

2012年9月13日 星期四

使用 ADO 透過 ODBC 連接至 SQLite,用 OpenSchema 取得 Table Name 會亂碼的解決方法

最近開始使用 SQLite 當作應用程式的本地資料儲存媒體,當然也想要針對 SQLite 資料庫做一些管理跟查詢工作。雖然網路上可以找到需付費或是不須付費的 SQLite 管理工具,但是還是想使用自製的 DB 工具來查詢資料。畢竟用慣了,哪裡用得不爽還可以自己改一改。

但是自製的 DB 工具使用的是 ADO 來連接資料庫,對於 SQLite 的免費連接方案只有 SQLite ODBC Driver

連接上是沒有問題,也可以正常的擷取資料,無亂碼
不過使用 OpenSchema 來取得資料庫中的 table,以及 table 中的欄位時,卻出現了亂碼

2012-09-13_085411

解決方法如下:
開啟 ODBC 設定,將「OEMCP Translation」打勾,就 OK 了

2012-09-13_085738

設定完成之後,就可以正確的抓到中文的 table name 跟 column name 了

2012-09-13_090117

2012年3月21日 星期三

ASP.Net 要透過加入 AD 的 ExchangeServer 發郵件的方法

1. 讓 ASP.Net 信任 ExchangeServer 的自訂憑證

在 Global.asax.cs 裡面的 Application_Start 事件加入以下這行:

ServicePointManager.ServerCertificateValidationCallback += 
    new RemoteCertificateValidationCallback(ValidateServerCertificate);

以及在 Global.asax.cs 加入這個靜態方法

public static bool ValidateServerCertificate(Object sender, 
    X509Certificate certificate, X509Chain chain, 
    SslPolicyErrors sslPolicyErrors)
{
    return true;
}

using 要加入

using System.Net;
using System.Net.Security;
using System.Security.Cryptography.X509Certificates;

2. 發郵件時程式

SmtpClient sc = new SmtpClient();
sc.Credentials = CredentialCache.DefaultNetworkCredentials;
sc.EnableSsl = true;
sc.Send(mm);    // mm 是 MailMessage

3. 在 web.config 中設定好

<system.net>
    <mailSettings>
        <smtp from="寄信人信箱" deliveryMethod="Network">
            <network host="郵件主機"
                port="埠號"
                userName="登入帳號"
                password="登入密碼"
                defaultCredentials="true" />
        </smtp>
    </mailSettings>
</system.net>

4. 將 IIS 的應用程式集區設定為「整合式」

2011年12月15日 星期四

Crystal Report 9 以後適用的“拆解長字串成多行”函數

//
// 將長字串拆解成數行,中間用 CR+LF 分開
// Crystal Report 9 以後適用
//
StringVar s := {要拆解的欄位};                // 要拆解的字串
StringVar output := '';                     // 輸出字串
NumberVar CharsInALine := 20;               // 一行幾個字
NumberVar currLength := 0;
while Length(s) > 0 do
(
  // 這只是很粗略的判斷,假定使用者只會輸入半形英數字跟中文字,
  //
不會使用半形的特殊符號,如半形日文假名
  if AscW(s) > 256 then
  (   
    currLength := currLength + 2;           // 中文字,長度 + 2
  )
  else
  (
    currLength := currLength + 1;           // 文數字,長度 + 1
  );
  output := output + s[1];
  if currLength >= CharsInALine then
  (
    output := output + Chr(13) + Chr(10);
    currLength := 0;
  );
  s := Mid(s, 2);
);
output;

2011年10月9日 星期日

用 NPOI 在 Excel 工作表中畫斜線

程式碼如下:
using NPOI;
using NPOI.SS.UserModel;
using NPOI.HSSF.UserModel;

……

// 於工作表上建立 HSSFPatriarch,注意!一張工作表只可以建立一個 HSSFPatriarch
HSSFPatriarch p = sheet1.CreateDrawingPatriarch() as HSSFPatriarch;

// new HSSFClientAnchor(dx1, dy1, dx2, dy2, col1, row1, col2, row2) // 就是從 (col1, row1) 儲存格的 (dx1, dy1) 點 // 到 (col2, row2) 儲存格的 (dx2, dy2) 點建立一個繪圖物件的涵蓋範圍 HSSFClientAnchor a = new HSSFClientAnchor(0, 0, 0, 0, 0, 0, 1, 1); // 建立一個 HSSFSimpleShape 繪圖物件,範圍是 a,物件會充滿整個範圍 HSSFSimpleShape s = p.CreateSimpleShape(a); s.ShapeType = HSSFSimpleShape.OBJECT_TYPE_LINE; // 設定線條類型為線條 s.LineStyle = HSSFSimpleShape.LINESTYLE_SOLID; // 設定為實線 s.LineWidth = 1; // 限定線條寬度為 1