Firefox plugin 開發
今天幫忙 survey 的結果,雖然應該不會用到,但還是順便整理起來好了… 感覺起來跟搞 ActiveX 很類似,只是 ActiveX 有一些東西是 Microsoft IE 幫你弄好了,但 Firefox plugin 要自己來弄好這些東西…
今天幫忙 survey 的結果,雖然應該不會用到,但還是順便整理起來好了… 感覺起來跟搞 ActiveX 很類似,只是 ActiveX 有一些東西是 Microsoft IE 幫你弄好了,但 Firefox plugin 要自己來弄好這些東西…
利用 tcp client connection 或 socket connection 來跟 Maya 溝通
一般狀況下,如果不是很在意使用 XMLWriter 後輸出的文字編碼是哪一種的話,可以很簡單地用下面的方式完成 StringBuilder sb = new StringBuilder(); XmlWriter writer = XmlWriter.Create(sb); writer.WriteStartDocument(); //補上 xml 內容, 用 writer.WriteStartElement() 等完成 writer.WriteEndDocument(); writer.Flush(); XmlDocument xmlDocument = new XmlDocument(); xmlDocument.LoadXml(sb.ToString()); 但是可以發現到這樣子所輸出的 XML 文件是變成 UTF-16 encoding。雖然有 XmlWriterSettings 這東西可以去設定 XMLWriter 的編碼,不過看起來好像是有些問題,輸出的 XML 結果依舊是 UTF-16。 解決的方法是用 MemoryStream 與 XMLTextWriter。 MemoryStream stream = new MemoryStream(); XmlWriter writer = new XmlTextWriter(stream, Encoding.UTF8); writer.WriteStartDocument(); […]
因為 Facebook 上頭記錄時間是用 Unix Timestamp,所以來看一下怎麼做。
當透過 access token 去 facebook 抓取資料時,回傳的資料將以 JSON 的方式編碼,在 C# 裡頭可以用 JavaScriptSerializer 來處理,下面是個很懶惰的處理方式,不需要另外先去設計與宣告一個符合 facebook JSON 格式的 class object 來儲存資料,反正需要的時候再來針對 Key 另外處理即可。
取得登入帳號 Environment.UserName 取得帳號等有儲存在本機上的資訊 using System.Security.Principal; using System.Threading; //—– AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal); WindowsPrincipal myPrincipal = (WindowsPrincipal)Thread.CurrentPrincipal; WindowsIdentity myIdentity = (WindowsIdentity)myPrincipal.Identity; Console.WriteLine(“IdentityType: ” + myIdentity.ToString()); Console.WriteLine(“Name: {0}”, myIdentity.Name); Console.WriteLine(“Member of Users? {0}”, myPrincipal.IsInRole(WindowsBuiltInRole.User)); Console.WriteLine(“Member of Administrators? {0}”, myPrincipal.IsInRole(WindowsBuiltInRole.Administrator)); Console.WriteLine(“Authenticated: {0}”, myIdentity.IsAuthenticated); Console.WriteLine(“Anonymous: {0}”, myIdentity.IsAnonymous); 取得帳號等有儲存在本機上的資訊 – II 使用 Win32 API using System.Runtime.InteropServices; //—– [DllImport(“Advapi32.dll”, EntryPoint=”GetUserName”, ExactSpelling=false, SetLastError=true)] static extern […]
本文以中英夾雜並陳 This article is interleaved with Chinese and English. 本來還想在網路上看能不能找到答案的, 結果只有找到一些可能的提示… 不過最後還是摸索出來了啦 😀 At the beginning, I hope to scrounge the solution from Internet, but after hours of searching, I only find some possible hints. Anyway, here’s the solution.
using System.Windows.Forms; namespace XXX_namespace { /// /// A transparent control. /// public class TransparentPanel : Panel { public TransparentPanel() { } protected override CreateParams CreateParams { get { CreateParams createParams = base.CreateParams; createParams.ExStyle |= 0x00000020; // WS_EX_TRANSPARENT return createParams; } } protected override void OnPaintBackground(PaintEventArgs e) { // Do not paint background. } } }
今天無意中看到正解,沒想到超簡單,不必用以前的蠢方法啦! —– without a window—– @echo off start /B Myapp.exe —- minimized —- @echo off start /MIN Myapp.exe
最近在用 C# 開發 ActiveX 來擺在網頁上面執行,查了一些資料之後終於做出來了,來整理一下放在下面。