2012年11月26日 星期一

Windows Azure 手動啟用模擬器

先利用Windows Azure SDK Shell

然後執行下面的命令就可以看到工具列中的圖示在雀躍的彈跳
csrun /devstore:start
csrun /devfabric:start

使用Windows Azure的BLOB(SDK 2012-10)

在測試Windows Azure 的 BLOB 存取時,真的是吃盡苦頭
最大的原因是改版過快,過時的寫法都不能用
買來的書的範例很快就過時不可以使用了
要找BUG因為不熟也不清楚那邊下手
先記錄一些我這次找到的問題點

Windows Azure 1.3時代因為執行環境換到了 w3wp.exe 上
所以舊的WebRole.cs的寫法已經不能採用
會遇到
SetConfigurationSettingPublisher needs to be called before FromConfigurationSetting can be used

要將SetConfigurationSettingPublisher改寫到Global.asax中

但我自己再用的時候是喜歡要用到再呼叫就可以了
程式碼如下
var account = CloudStorageAccount.Parse("DefaultEndpointsProtocol=http;AccountName=XXX;AccountKey=XXXX");
 
在這之後,其他的程式碼可以照舊使用
 

2012年11月25日 星期日

如何用VB6呼叫.NET開發的DLL

1.利用VS建立一個一個DLL專案
2.設定讓[組件成為 COM-Visible]
3.勾選[註冊 COM Interop]
4.簽署組件,新增一個[強式名稱金鑰檔],並且給予密碼
5.編譯,並且產生 XXX.dll 和 XXX.tlb
6.將檔案複製到要安裝的電腦中
7.註冊COM DLL RegAsm.exe c:\XXX\XXX.dll /tlb:XXX.tlb /codebase
8.VB6 可以用 CreateObject來建立CLASS

VB6 Code Sample

Private Sub Form_Load()

Set o = CreateObject("Namespace.ClassName")

Label1.Caption = o.Method()

End Sub

2012年11月10日 星期六

2012年11月7日 星期三

Redmine 設定

如果有用 BitNami for Windows 的 Redmine 那預設的設定檔會放在
C:\Program Files\BitNami Redmine Stack\apps\redmine\htdocs\config

2012年10月21日 星期日

中華電信發行行動支付SIM卡NFC服務

會寫這篇文章的起因是中華電信推出了NFC解決方案
並且自薦TSM平台,整合了重量級的廠商們
對我們公司很有影響力,很多同事在問我相關問題
我整理了連結如下

攜手金雅拓 中華電搶發NFC行動支付SIM卡
http://www.mem.com.tw/article_content.asp?sn=1210110012

中華電信NFC前導試用計畫啟動,首創Hami智慧錢包服務
http://3c.u-car.com.tw/3cdetail.asp?articleid=2248

中華電將推NFC電子錢包及iPhone 5背匣
http://www.runpc.com.tw/news.aspx?id=100972

中華電信跨產業合作推全方位NFC前導試用計畫
http://www.cht.com.tw/aboutus/messages/msg-121008-174621.html



一連串的第三方支付消息整理

首先看
馬政府施政有(好)感,開放第三方支付取得重大關鍵進展
這篇由張育寧執行長所發佈的好消息
由兩位政委管中閔,張善政主導, 要開發第三方支付
我想我之前在許多演講場合中聽過張政委的演說
覺得是願意出力出頭腦的好政委,這篇很值得參考

延伸閱讀
管中閔、張善政兩位政委,聯手大力鬆綁台灣經濟,從第三方支付開始!
http://techorange.com/2012/09/25/the-administrative-committee-join-hands-to-promote-the-deregulation-of-taiwans-third-party-payment/

電子商務 研議開放第三方支付
http://news.chinatimes.com/politics/130502/132012091600473.html

CIO(資訊長)新登場!馬政府延攬 Google 張善政擔任行政院政務委員
http://techorange.com/2012/02/01/chang-is-our-cio/
內有政務委員的分工表

Paypal 到 Paylink,第三方支付到台灣為什麼全變了形?
http://techorange.com/2012/05/23/taiwan-3rd-party-payment-regulation-feedback/

支付產業聚焦 – 你知道 PayPal 怎麼賺錢嗎?
http://techorange.com/2012/04/26/payment-how-paypal-makes-money/

支付產業聚焦 – 台灣第三方支付發展落後,法源出了什麼問題?
http://techorange.com/2012/05/22/taiwan-3rd-party-payment-regulatio/

【Roick’s Talk: Law and Web 專欄】不同位置的不同腦袋:第三方支付制度不同參與者的觀點(I)
http://techorange.com/2012/06/04/roicks-talk-law-and-web-payment-1/
馮昌國律師提出的

2005年稅法的解釋
http://www.ttc.gov.tw/ct.asp?xItem=56783&CtNode=97&CtUnit=40&BaseDSD=31&htx_lawID=13199&htx_xBody=%B1b%C3%AF&nowPage=4&pageSize=15&xiList=56067%2C56657%2C56678%2C56783%2C56801%2C56814%2C56815%2C56816%2C56817%2C57004%2C57085

2012年10月12日 星期五

查 SQL DB 中的所有 TABLE 的列數以及資料大小

我們常常會要看看某一個DB中的所有Table的列數和大小
可以使用下列語法

use table
exec sp_MSforeachtable 'EXEC sp_spaceused ''?'''

2012年10月7日 星期日

偵測 Socket client是否斷線?

最重要的是加入一行
listenSocket.IOControl(IOControlCode.KeepAliveValues, GetKeepAliveSetting(1, 5000, 5000), null);

private byte[] GetKeepAliveSetting(int onOff, int keepAliveTime, int keepAliveInterval)
{
byte[] buffer = new byte[12];
BitConverter.GetBytes(onOff).CopyTo(buffer, 0);
BitConverter.GetBytes(keepAliveTime).CopyTo(buffer, 4);
BitConverter.GetBytes(keepAliveInterval).CopyTo(buffer, 8);
return buffer;
}


參考資料來源
http://www.dotblogs.com.tw/lbwshift2/archive/2012/10/07/76320.aspx

2012年8月23日 星期四

Android 分辨率的整理

Google 官方定義
http://developer.android.com/guide/practices/screens_support.html

  • xlarge screens are at least 960dp x 720dp
  • large screens are at least 640dp x 480dp
  • normal screens are at least 470dp x 320dp
  • small screens are at least 426dp x 320dp

  • 參考資料
    http://1.bp.blogspot.com/-3E63LXjrVq0/T114CNfvxCI/AAAAAAAABik/jaAablflW7c/s1600/2012-03-12_121337.png

    http://lp43.blogspot.tw/2012/03/android.html

    拓震家具

    因為辦公室搬新家,東選西選發現OA家具都差不多,大家拿出來的型錄是都一樣的
    經比較後,拓震家具是價格較為實在的
    http://www.tjoffice.com.tw/index.html

    NFC 開發工具的抉擇

    選來選去,大多都推薦NXP ACR系列

    AutoID連結
    http://www.autoid.com.tw/product/specification.asp?uid=1348
    RFID的硬體種類較多可以選擇,價格合理

    Fuako連結
    http://sdk.futako.net/Index.aspx?p0=AAT1P0000012&p1=9&p2=1&p3=1&p4=0&p5=1
    軟體SDK較齊全,價格最合理(5XXX)

    長高科技
    http://www.dmatek.com.tw/tn/viewproc.asp?id=1543
    我有跟他買過東西,服務尚可,價格偏高,解決方案較齊全

    2012年7月9日 星期一

    iOS Passbook 電子優惠劵

    每年WWDS都是大家引頸期盼的發表會
    本次最吸引我的是Passbook
    雖然離理想付費整合還很遠
    但是看起來方向都是對的

    大致說明一下
    這個是整合各式優惠劵或是會員卡的服務
    尤其皆已條碼的卡片作為整合
    整合到你的手機螢幕上

    我喜歡它的原因是因為官方推出的
    介面真的還不賴

    官方介紹
    http://www.apple.com/tw/ios/ios6/#passbook

    WWDC影片
    http://youtu.be/xKqE__x4yp8

    開發介紹
    http://www.passsource.com/
    http://www.zdnet.com/blog/apple/businesses-can-create-passes-for-ios-6-passbook-today/13204

    新聞介紹
    http://chinese.engadget.com/2012/06/11/apple-passbook/
    http://www.appguru.com.tw/appguru/blog/8279/introduction-of-new-features-ios6-passbook-help-you-seamlessly-integrated-boarding-pass
    http://www.app01.com.tw/forum_post_pro_view.php?no=40141

    2012年7月5日 星期四

    Windows 2008 R2 開放遠端桌面讓多人使用

    http://shaurong.blogspot.tw/2012/05/windows-2008-r2.html

    Windows DNS 移機

    1.先備份註冊表
    「HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS」
    「HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DNS Server」
    這邊的資料把她匯出

    2.備份目錄
    C:\Windows\System32\DNS

    3.要還原的話就將註冊表匯入,然後目錄回蓋即可

    參考資料
    http://chenweichi.blogspot.tw/2011/09/windows-dns-server.html

    2012年7月2日 星期一

    2012年6月6日 星期三

    Dotfuscator WP7 Edition

    Windows Phone 7必備工具
    最佳化以及混淆你的Windows Phone 7 程式碼
    輸入資料後就可以拿到序號

    Dotfuscator WP7 Edition
    http://www.preemptive.com/windowsphone7.html

    2012年6月2日 星期六

    Windows Azure 台灣區可以用了


    期待已久的Windows Azure Taiwan終於可以用了
    可以先試用三個月,有需要的可以試試囉
    https://account.windowsazure.com/Home/Index

    2012年5月28日 星期一

    iOS 發佈 IPA

    我想很多iOS的開發者,有需要給其他人做測試
    我用的方法是先JB iPhone
    然後將我們開發的程式封裝後
    再抽取出來做成IPA的檔案

    細節如下:
    1.我用XCode 4.3.2 ,去Product->Archive
    2.會生成「專案名稱」.xcarchive
    3.請進入此目錄 Products->Applications,然後找到專案名.app
    4.在一個新的目錄中,建立Payload目錄,大小寫要注意
    5.將.app複製到Payload目錄中
    6.在新目錄中建立ITunesArtwork.png,尺寸是512*512
    7.將目錄Payload和ITunesArtwork.png一起壓縮起來成「專案名」.zip
    8.將zip改成ipa即可

    2012年5月17日 星期四

    跟對人,跟得久,核心競爭力

    民初名妓小鳳仙,跟了蔡鍔將軍,
    於是流芳千古,這告訴我們要跟對人;趙四小姐跟了有婦之夫張學良,如果她只跟
    一年,那是姦情,跟三年是偷情,但她跟了七十幾年,成為千古愛情,這告訴我們
    不但要跟對人,還要跟得久;有個富翁招女婿,先來了身材高挑的A,擁有哈佛學
    歷、任職外資企業,富翁很滿意,又來了英俊帥氣的B,家財億萬,富翁也覺得門
    當戶對;輪到C,其貌不揚,也沒什麼過人之處,富翁問:你有什麼優點?C 答:
    我什麼都沒有,但你女兒肚子裡的孩子是我的!這告訴我們核心競爭力在於關鍵位
    置上要有自己人!

    2012年4月29日 星期日

    Windows Azure 免費試用

    Windows Azure終於可以在台灣使用了
    下面蒐集了些資源備用

    Windows Azure資源
    http://www.windowsazure.com/zh-tw/

    開發人員中心
    http://www.windowsazure.com/zh-tw/develop/overview/

    2012年4月9日 星期一

    Goomod MoneyCoin 第一波動畫說明

    Goomod MoneyCoin 我們公司的新產品服務動畫第一版本,說明我們的MoneyCoin如何被使用

    2012年4月7日 星期六

    Microsoft 微軟 提供的HTML5的DEMO SITE

    Microsoft 微軟 提供的HTML5的DEMO SITE
    挺不賴的,一定要推薦給大家
    http://buildnewgames.com/

    2012年4月3日 星期二

    中華民國資訊軟體協會-個人資料保護服務團

    最近踏入個資的領域,這個網站還不賴,可以參考看看

    中華民國資訊軟體協會-個人資料保護服務團
    http://www.privacy-protect.org.tw/

    2012年4月2日 星期一

    System.Net.WebException SSL HTTPS

    Catched Exception: [System.Net.WebException]: "基础连接已经关闭: 接收时发生错误。" in
    System.Net.WebException: 基础连接已经关闭: 接收时发生错误。 ---> System.EntryPointNotFoundException: 无法在 DLL“security.dll”中找到名为“EnumerateSecurityPackagesW”的入口点。
    在 System.Net.UnsafeNclNativeMethods.SafeNetHandles_SECURITY.EnumerateSecurityPackagesW(Int32& pkgnum, SafeFreeContextBuffer_SECURITY& handle)
    在 System.Net.SafeFreeContextBuffer.EnumeratePackages(SecurDll Dll, Int32& pkgnum, SafeFreeContextBuffer& pkgArray)
    在 System.Net.SSPISecureChannelType.EnumerateSecurityPackages(Int32& pkgnum, SafeFreeContextBuffer& pkgArray)
    在 System.Net.SSPIWrapper.EnumerateSecurityPackages(SSPIInterface SecModule)
    在 System.Net.SSPIWrapper.GetVerifyPackageInfo(SSPIInterface secModule, String packageName, Boolean throwIfMissing)
    在 System.Net.Security.SecureChannel..ctor(String hostname, Boolean serverMode, SchProtocols protocolFlags, X509Certificate serverCertificate, X509CertificateCollection clientCertificates, Boolean remoteCertRequired, Boolean checkCertName, Boolean checkCertRevocationStatus, LocalCertSelectionCallback certSelectionDelegate)
    在 System.Net.Security.SslState.ValidateCreateContext(Boolean isServer, String targetHost, SslProtocols enabledSslProtocols, X509Certificate serverCertificate, X509CertificateCollection clientCertificates, Boolean remoteCertRequired, Boolean checkCertRevocationStatus, Boolean checkCertName)
    在 System.Net.TlsStream.ProcessAuthentication(LazyAsyncResult result)
    在 System.Net.TlsStream.Write(Byte[] buffer, Int32 offset, Int32 size)
    在 System.Net.PooledStream.Write(Byte[] buffer, Int32 offset, Int32 size)
    在 System.Net.ConnectStream.WriteHeaders(Boolean async)
    --- 内部异常堆栈跟踪的结尾 ---


    我再處理 WCF 的服務時
    只要是用Http改到Https都會出現此問題
    結論後確認是目錄下不可以有Security同名的DLL
    若你跟我一樣用自家的Security.dll
    那就醫定要改名才不會衝突到

    2012年3月25日 星期日

    2012年3月24日 星期六

    取得Windows phone 7的唯一識別碼(IMEI,ANID)

    想要取得認證 Windows Phone 7 的識別方法
    我推薦用IMEI碼(設備唯一碼)
    以及ANID(使用者ID)

    首先要宣告
    1. <Capability Name=ID_CAP_IDENTITY_DEVICE/>
    2. <Capability Name=ID_CAP_IDENTITY_USER/>
    然後在要取得資料的程式內寫
    string DeviceID = (byte[])DeviceExtendedProperties.GetValue("DeviceUniqueId");
    
    string ANID = UserExtendedProperties.GetValue("ANID").Substring(2, 32);

    引用來源


    2012年3月23日 星期五

    Windows Phone 7 離開程式的方法

    在Windows Phone 7 要離開程式
    真的不是件容易的事情

    簡單整理後方法有二
    1.產生Exception
    在App.xaml中加入

            private class QuitException : Exception { }
     
            public static void Quit()
            {
                throw new QuitException();
            }

    並且修改App.xaml中的
    private void Application_UnhandledException(object sender, ApplicationUnhandledExceptionEventArgs e)
    

    加入
                if (e.ExceptionObject is QuitException)
                    return;

    看起來像這樣
            // 發生未處理的例外狀況時要執行的程式碼
            private void Application_UnhandledException(object sender, ApplicationUnhandledExceptionEventArgs e)
            {
                if (e.ExceptionObject is QuitException)
                    return;
     
                if (System.Diagnostics.Debugger.IsAttached)
                {
                    // 發生未處理的例外狀況; 切換到偵錯工具
                    System.Diagnostics.Debugger.Break();
                }
            }

    2.直接連覽到一個不存在的網頁
    NavigationService.Navigate(new Uri("/NotExistPage", UriKind.Relative));
    

    不過不清楚可不可以過審核喔

    2012年3月21日 星期三

    Visual Studio 擴充套件介紹 for WEB and HTML and CSS3

    保哥的擴充套件推薦第三彈
    這次有支援HTML5和CSS3害JAVASCRIPT的
    Web Standards Update for VS2010 SP1

    擁有及時預覽效果
    javascript壓縮支援
    html5 tag
    css3 tag

    詳細說明如下
    http://msdn.microsoft.com/zh-tw/vstudio/hh289370

    下載請用VS內的[擴充管理員]

    Live SDK for Windows Phone 7

    好站分享
    http://www.dotblogs.com.tw/pou/archive/2012/03/22/70936.aspx

    在Windows Phone 7(WP7)中,無法使用JSON的問題

    常用到的JSON在WP7居然找不到用法
    經查詢後,原來是要加入
    System.ServicModel.Web
    的參考

    其餘就一樣了,引用即可
    using System.Runtime.Serialization.Json
    

    2012年3月19日 星期一

    Windows phone 防止程式執行的時候,螢幕休眠

    有些時候,通常是遊戲,會需要在執行時避免進入螢幕休眠

    有下列兩種方法
    Microsoft.Phone.Shell.PhoneApplicationService.Current.ApplicationIdleDetectionMode = Microsoft.Phone.Shell.IdleDetectionMode.Disabled
    
    Microsoft.Phone.Shell.PhoneApplicationService.Current.UserIdleDetectionMode = Microsoft.Phone.Shell.IdleDetectionMode.Disabled;
    

    當你用完時候,記得將他回復,否則會很耗電

    參考是
    http://www.dotblogs.com.tw/pou/archive/2010/11/06/18845.aspx
    http://msdn.microsoft.com/en-us/library/microsoft.phone.shell.phoneapplicationservice.useridledetectionmode(v=VS.92).aspx

    2012年3月18日 星期日

    已啟用AJAX的WCF如何讓WIN FORM 呼叫以及加入

    現在撰寫WCF常常都會啟用AJAX
    為的都是跨平台,尤其是跨越手機的平台
    但是.NET的WIN FORM就會因此而無法參考到

    下列是我查出的原因和建議的做法,請參考
    首先AJAX是用endpointBehaviors
    但是WINDOWS加入參考要用
    serviceBehaviors
    所以請先加入一個serviceBehaviors
    並且加入
    serviceMetadata httpGetEnabled="true"

    接下來到service中加入behaviorConfiguration="剛剛您設定的serviceBehaviors的name"

    接下來請用瀏覽器看SERVICE
    若是看的到第一行字是"您已建立SERVICE"
    那就代表成功了

    否則你只能採用AJAX的方法呼叫他,也就是你要寫JS去處理
    或是要用HTTP去處理這件事

    參考資料
    http://www.frankxulei.com/?p=768

    .Net Obfuscator

    本篇推薦一些常用的混淆器

    Crypto Obfuscator
    http://www.ssware.com/cryptoobfuscator/obfuscator-net.htm
    這一套還蠻多人用的,功能平均,價格合理約399美元

    DFStack
    http://www.dfstack.com/
    反混淆工具
    若你用VS.NET中的混淆器的話,那可以用這套反混淆回來
    所以結論是Dotfuscator Community Edition 這套基本款是不可以用的
    要還是要買專業版本

    SmartAssembly

    Robust .NET obfuscator

    http://www.red-gate.com/products/dotnet-development/smartassembly/
    這一套看起來屌,但我還沒有用過,不過看了他的影片說明
    只能給他滿分,只希望他別把程式混到不行用

    Eazfuscator.NET
    http://www.foss.kharkov.ua/g1/projects/eazfuscator/dotnet/Default.aspx
    免費版本的混淆器,目前沒有看到反混淆器,所以值得拿來用用看

    2012年3月15日 星期四

    2012年2月29日 星期三

    電子發票條碼整合

    財政部的電子發票整合平台
    https://www.einvoice.nat.gov.tw/APMEMBERVAN/GeneralCarrier/generalCarrier?mp=1

    可以去申請條碼,並且用手機歸戶
    並且如果你歸到自然人憑證中即可以領獎

    現階段是還蠻麻煩的
    但未來普及後會方便的

    今天剛開放,很多人申請,簡訊要稍等

    2012年2月15日 星期三

    Zune不允許同時有兩個行程存取相簿

    在開發Windows Phone 7時候,需要存取手機相簿
    常常會遭遇錯誤,主要原因是Zune也在存取,
    他不允許其他人同時存取,所以解法是需要關閉Zune

    然後執行WPDTPTConnect32和WPDTPTConnect64
    之後就可以利用VS.NET繼續除錯

    還有我的目錄是在
    C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v7.1\Tools\WPConnect
    可以參考一下

    2012年2月14日 星期二

    zxing編譯會有iostream: No such file or directory錯誤

    通常你新起一個專案,並且加入zxing參考後,編譯都會遇到這個問題
    cpp/core/src/zxing/common/ 
    Counted.h:26:20: error: iostream: No such file or directory 


    解決方法很簡單
    將你的main.m改成main.mm即可
    也就是將c改成c++

    2012年2月9日 星期四

    測試Android的事件

    首先先進Android

    adb shell

    在android內打入
    getevent

    接下來就可以使用mouse或是keyboard
    即可得知事件資訊
    /dev/input/event0: 0003 0000 00000100
    /dev/input/event0: 0003 0001 00000210
    /dev/input/event0: 0001 014a 00000001
    /dev/input/event0: 0000 0000 00000000
    /dev/input/event0: 0001 014a 00000000
    /dev/input/event0: 0000 0000 00000000

    2012年2月8日 星期三

    adb push .so : Out of memory

    在adb push .so的檔案時,通常第一個會遇到Readonly錯誤
    此錯誤用adb remount即可以解決

    但接下來又會遇到Out of memory錯誤
    這個錯誤需要修改模擬器的parition size
    修改方法如下
    cd C:\android\android-sdk-windows\tools
    C:..\tools> emulator -avd EmulatorName -partition-size 512
    cd C:\android\android-sdk-windows\platform-tools
    adb remount
    EmulatorName 預設在你的帳號的.android/.avd/下

    javah class file for XXX not found

    照著書上的javah用法,三本有三本寫你要在BIN的目錄下指令
    但怎麼用都出現javah class file for XXX not found
    研究了幾天,才知道原來是要在SRC目錄下指令才是對的
    記錄起來幫助大家解決問題

    參考指令如下
    SampleJNI\src>javah -jni -classpath . XXX.sampl
    ejni.SampleJNIActivity

    林口與世大運

    原來是大運的選手村是打算蓋在林口A7的土地
    但至一塊已經被遠雄,皇翔,名軒,麗寶拿走
    後來選到林口文化一路國宅用地
    大約16公頃,看來林口最近很夯

    Android NDK: Host 'awk' tool is outdated. Please define HOST_AWK to point to Gawk or Nawk !

    Android 編譯NDK時,常常都有這個錯誤
    Android NDK: Host 'awk' tool is outdated. Please define HOST_AWK to point to Gawk or Nawk !
    經過查詢後,原來是開發人員把自己的NDK帶入
    所以把他刪除後,用系統的就可以了

    一般放於/android-ndk/rebuilt/windows/bin
    檔名awk

    這問題有好幾種解法,這個最快最方便

    2012年2月3日 星期五

    The method onClick(View) of type new View.OnClickListener(){} must override a superclass

    一個很簡單的滑鼠監聽事件
    但一直有The method onClick(View) of type new View.OnClickListener(){} must override a superclass錯誤

    找到最後原來是編譯器版本錯誤
    1.5->1.6即可

    http://hi.baidu.com/bing2liuliu/blog/item/a88789b53e709a608ad4b2d4.html

    2012年1月21日 星期六

    2012年1月6日 星期五

    由電腦端控制Android的幾套軟體以及方法


    1.LazyDroid(推)
    http://blog.udn.com/liondodo/5219041

    2.PicMe
    http://gphonefans.net/thread-10696-1-1.html

    3.VNC(推),Droid VNC Server
    http://www.soomal.com/doc/20100002201.htm

    4.WebKey(推)
    http://easy-play-android.blogspot.com/2010/11/webkey.html

    5.FullKeyboard
    http://blog.xuite.net/haily/android/31728557