發表文章

Xamarin : Android : Using ZXing.Net.Mobile Scan Barcode 掃描讀取條碼/QR碼

圖片
網路上大部份文章在講 Xamarin 開發都用上了 CPL類型的專案, 對於純粹使用 Android 專案使用者要理解真是有點不方便, 這裡是記錄了在 Xamarin 下的 Android 專案如何開發一個讀取 條碼或是 QR碼的功能 個功能是基於 ZXing.Net.Mobile 套件開發的,可以自行把這個套件應用你的專案中 1、假設你經開啟了一個 Android blank Project (空白專案) 2、使用 NuGet 管理員去新增 ZXing.Net.Mobile 套件,並把它安裝到專案中 3、然後到你要呼叫使用 ZXing 操作的 Activity 去新增引用(在這案例裡我是放在 MainActivity.cs 內) using ZXing; using ZXing.Mobile; 4、在顯示畫面(Main.axml)上設計兩個 TextView 和一個 Button,用來啟動掃描和接收掃描的結果 5、然後就是把操作 ZXing 的程式碼加入,在這案例中,我只簡單全部做在 MainActivity 的 OnCreate 內,實際應用上你可以依照需要放置。 using Android.App; using Android.Widget; using Android.OS; using ZXing; using ZXing.Mobile; namespace ZxingTest {     [Activity(Label = "ZxingTest", MainLauncher = true, Icon = "@drawable/icon")]     public class MainActivity : Activity     {         //建立操作物件指標         private TextView _barcodeFormat, _barcodeData;         protected override void OnCreate(Bundle bundle)         {             base.OnCreate(bundle);             // 設定顯示畫

C# AES encrypt/decrypt and Base64 encode/decode

圖片
範例檔案: 這裡下載 純執行檔: 這裡下載 有興趣研究 AES 加解密 與 Base64 編解碼 的可以研究一下 因為用到了AES 元件,所以只適用 .NET 3.5 以上 畫面如下: 為什麼 AES 和 BASE64 寫在一起? 因為 AES 加密後的內容是 ASCII 碼,很多是無法以明文顯示的,因此會再編碼成BASE64以便傳遞或攜帶。反過來說,接收到AES的密碼通常會以BASE64編成居多,所以必須解碼後再進行AES解密環原本文。 Base64編碼: 要引用  using System; //將文字內容(明文)轉成base64文字(編碼) tbB64_2.Text = Convert.ToBase64String(Encoding.Default.GetBytes(tbB64_1.Text)); Base64解碼: 要引用  using System; //將base64編碼文字轉回明文(解碼) tbB64_1.Text = Encoding.Default.GetString(Convert.FromBase64String(tbB64_2.Text)); AES加密: 要引用  using System.Security.Cryptography; static byte[] EncryptionByAES(string plainText, byte[] key, byte[] IV) {   byte[] encrypted;   //檢查參數   if (plainText == null || plainText.Length <= 0)      throw new ArgumentNullException("沒有要加密的文字");   if (key == null || key.Length <= 0)      throw new ArgumentNullException("沒有提供金鑰");   if (IV == null || IV.Length <= 0)       throw new ArgumentNullException("沒有提供IV");   //這裡使用Ae

How customize part for Fritzing - 如何自訂 Fritzing 的元件

圖片
建議先瞭解一下 Fritzing customized part principle - Fritzing 自訂元件原則 如果不想瞭解或沒時間瞭解也沒關係,反正就是依樣畫葫蘆也可以 這裡使用的是 Fritzing 0.93b 版的,跟舊版的操作方式會有相當的出入,請注意 。 ○使用的工具:      Fritzing 0.93b 和 Inkscape 0.92.2 ○認識 Fritzing 元件編輯器:     這個版本的元件編輯器所在位置非常彆扭,以前它是直接列在工具『元件』裡面,現在則必須把元件拖進麵包板後才能新建元件。 1、首先開啟 Fritzing ,然後到『麵包板』 2、然後從右側『元件』拖拉一個元件到『麵包板』上,我這邊是選擇『CORE』裡面的 Mysery Part - 3 Pin 3、在『麵包板』上的元件按滑鼠右鍵叫出選單,選單裡面有個『Edit(New Parts Editor)』,點入後就可以看到元件編輯器了 元件編輯器上有6個主要標籤: 麵包板(breadboard): 主要是使用在麵包板上的圖片。 概要圖( schematic): 這邊我會稱為電路圖,因為這比較像電工科在畫的電路圖。 PCB: 印刷板電路,主要是提供給製作PCB輸出時的設計使用。 圖示(icon): 顯示在元件庫上的小圖案/圖示。 Metadata: 這個元件的相關資訊/訊息。 連接器(Connector): 設定這個元件的連接器/街腳/接點 編號、形式、名稱等等。 其中,前4種需要設計圖檔,但其實第4種 icon 可以使用元件編輯器直接以麵包板圖做為縮圖使用。 如果自製元件編輯完畢,記得要存檔,否則會消失不見喔!!! (它不會自動存檔) ○開始繪製圖檔:     使用 Inkscape 繪製 SVG圖檔。 我這邊的例子是以我在網路上購買的一個旋轉編碼器為例 在SVG設計上力求尺寸標準,尤其是連接器的接腳部分,因為這會大大影響您的元件使用在麵包板上時的的孔位是否能對準。 在製作圖檔時至少要做3種圖: 麵包板用 breadboard 概要圖  schematic : PCB:

Fritzing customized part principle - Fritzing 自訂元件原則

圖片
設計 Arduino 或 Resberry pi 的人,大概都用過 Fritzing 來設計電路 雖然它是免費的(當然也接受捐款,我也捐款過),但是缺點是零件(Part)種類無法包山包海。 大家最常遇到的問題是,找不到自己正在使用的零件,所以得靠第三方(別人的)的零件庫。 雖然有第三方零件庫,但說真的,在台灣的玩家常買對岸的零件時,或特製零件(某些賣場會找工廠批量設計生產)時都會找不到零件庫可以用或是下載。 雖然,網路上也接受客製化元件庫設計,不過是要收費的,對於學生/經濟力較弱的人來說,真的都是困難,不過 Fritzing 官方網站也有教您自己如何設計元件,也歡迎您把設計元件庫放在 GitHub 上分享給別人,不過前提是你要搞懂 Fritzing 設計元件的原理和方法。 所以,我把 Fritzing 使用自訂元件的原理,和設計方法簡單的說明一下,讓有心自己設計的人可以很方便的上手。 由於原理和實作內容可能不少,所以我分成幾篇來處理: Fritzing customized part principle - Fritzing 自訂元件原則(本篇) How customize part for Fritzing - 如何自訂 Fritzing 的元件 Make your fzbz file - 建立可以分享的元件檔(正在寫...) 注意我使用的 Fritzing 版本是 0.93b 的版本 , 作業系統是 Windows ,而網路上的中文教學大部分是舊版的而且不少使用 Linux (先說聲抱歉,我沒有用過 Linux,路徑請自行轉換),所以使用上有很大落差,尤其常常會找不到對應的功能表。 關係圖 檔案位置 ※沒相關資料夾的人請先安裝 Fritzing ,然後執行一次就會產生下面需要的資料夾。 Fritzing 的自訂元件通常會放在 %user%\Documents\Fritzing 下,這底下會有 Parts 和 Bins 兩個資料夾: 這個 bins 就是 Fritzing 畫面右邊那個元件庫啦~ 裡面會看到 search.fzb 和 my_parts.fzb 就是對應 搜尋放大鏡 和 My Parts 元件庫(Library)的。(圖案是MINE...

在Windows 7上架設自己的 DNS 服務(使用BIND 9)

圖片
這是因應自己需要架設 DNS 伺服器紀錄的 在沒有Windows Server和Linux作業環境中,利用PC版的Windows開設DNS服務的方式 BIND的官方網站:  https://www.isc.org BIND下載位置(如果不存在請到官方網站尋找): https://www.isc.org/downloads/ 找到下面位置,然後點開BIND項目產生下拉選單,選擇下載版本點選Download,依照作業系統類型選擇下載。 我下載的版本是 9.10.6 穩定版,作業系統是 64位元 下載後是一個壓縮檔,把它解壓縮,會看到一個安裝檔案 BINDinstall.exe 注意,你必須以系統管理員身份執行,否則安裝後會有很多問題 雙擊後進行安裝,下面如下:      注意中間紅框,這個是 BIND啟動用的帳號 [named],一般而言電腦不會有這個帳號,所以 它會在安裝時幫你建立這個帳號 ,當然這個建立過程是有問題的,所以我們事後要去調整這個帳號的權限。 還有一些需要注意(檢查)的: 安裝完畢後,程式正常的安裝位置會在 C:\Program Files\ISC BIND 9,如果你的路徑跑到 C:\Program Files (x86)\ISC BIND 9,代表你的作業系統是64位元,而你下載到的BIND版本是 32位元的。   某些版本BIND的組態設定檔會在 C:\Windows\System32\dns\etc,但是這個版本的組態預設是在 C:\Program Files\ISC BIND 9\etc,而程式與工具路徑會放在 C:\Program Files\ISC BIND 9\bin,要注意的是 C:\Program Files\ISC BIND 9\etc 基本上是空的,接下來所有組態檔都必須自己建立,這點對新手真的不是很友善。   某些套裝電腦會把作業系統的administrator帳號鎖起來,讓使用者以別的帳號執行,雖然這個使用者帳號是可能編屬於administrators權組的,但是對於C:\Program Files和C:\Windows的權限還是有一些限制的,對於接下來要建立BIND的組態與設定會有很多不便(通常是無法儲存設定檔到C:\Program File

【速報】針對WannaCry勒索軟體_微軟系列修補

Windows XP , Windows Vista , Windows 8 , Windows 2003 , Windows Server 2008適用 KB4012598修補快速整理包下載: https://drive.google.com/file/d/0BybxVRTRlzdLclAxV3lrMnpCQXc/view?usp=sharing Windows 7 , Windows Server 2008 R2 的部分要做4月份的SMB修補MS17-010 下載點: http://www.catalog.update.microsoft.com/Search.aspx?q=KB4015549

Imagine viewer 看圖軟體

這裡做個紀錄用... 最早用過ACDSee,它是最好用的,功能強大,但是後來不僅開始收費了,軟體也越來越肥,啟動時間不再像以前快,也不再小而美,後來就棄用。 再來就是FastStone Image Viewer,捨棄ACDSee後就它,但是也越來越商業化。 以上兩套都不支援Unicode,所以當你的圖變資料夾是簡體中文/日文時就會無法讀取 目前較好用的看圖軟體,可以支援Unicode資料夾或檔案名稱,軟體小而美,但功能有點精簡,可是作者自2014年後就再也沒有更新版,不知道怎麼了... 是不是沒錢繼續維護?建議覺得好用就到官網捐點錢,讓作者好繼續維護吧。 ※它有支援很多解碼插件可以自行安裝 官方網站: http://nyam.pe.kr/blog/entry/Imagine 下載點 : http://hqfc.express.com.tw:8080/share.cgi?ssid=0JT5ksH 密碼:qG55oShq