Archive

作者Archive

使用SanDisk RescurePRO將CF記憶卡照片救回實例

2012年9月22日 尚無評論

當開開心心出遊回來,最討厭的就是要整理拍好的照片,因為拜科技之賜,現在出遊都會拍又多又大的照片及影片回家,但這次才發覺這不是最討厭的,原來還有更討厭的事情,就是插入記憶卡後看到以下畫面:

 

什麼,還問我是否要格式化,天呀~不會吧!    我玩數位相機也有十多年了沒想到竟然讓我也遇到了…唉

再重新抽拔記憶卡及放回去相機一看,都沒還是一樣,真是怪,在相機看相片時都還正常,怎麼插到電腦上就出問題了

正在懊惱的同時,已經開始google 如何救我的照片了~怪不得有些專業級的玩家會買沒有很大的記憶卡分散存放保險一下,這下真的好擔心照片全都不見,這時要提醒一下,千萬不要照著做了格式化,以免讓救援的動作更加困難。

以前就看過有救援的程式,google 一下不難找,看來蠻多人都當過受害者,而且救回的機率很高,所以看來不用太緊張,不過真擔心損毀到我覺得不錯的相片就糟糕了

比較了幾套救源程式包含SanDisk RescurePRO, Digital Image Recovery,FinalData (這套以前有拿來救過被刪除掉的檔案,可惜印象不好,因為沒救到想救的=.=||),其它SanDisk RescurePRO的評價好像算最好的,所以當然就拿它來試試看囉!

用法比想像中簡單許多,執行後就按下相片影像

 

然後就是選擇你記憶卡的位置

按開始後就開始忙碌的救相片囉,以我這張4G的CF卡為例,約花上30~40分鐘左右才完成作業,而結果…ha ha ha 看到沒

大多都救回來了,原本拍了四百張左右,結果救回來近五百張呢~因為有些是先前刪除掉的照片也一併救回來囉!!

當然一看到檔案時,看來只有兩張救不回來,因為我都是拍raw檔,結果救回來變成的jpg ….而且也很怪,不過這樣的結果是可以接受的至少不是全都不見了

最後,雖然看到檔案都回來了,但還是有部份RAW檔是損毀的,用DDP去開結果打不開或是一打開時裡面的相片是亂掉的,不過還好數量不多,應該只有5~10張左右,這樣救回的成功率高達98~99%呢..不過本來記憶卡都是好好的,不知為啥就壞了,這下之後拍照可能會有陰影,看來是不是又該去買張新的記憶卡了..^^||


 

Categories: 小工具, 攝影543 Tags: ,

Mysql INSERT … SELECT 太舊版不支援

2012年9月12日 尚無評論

Insert Select 的語法,不太常用,但要使用時沒有作用就覺得很討厭,在一個蠻舊版的Mysql上,臨時有這個需求才發現顯示了原來這個語法在舊版本Mysql是不支援的。
在以下的連結有人就有說到在4.1.6後的版本就都可以用了….可惡!! 我的版本是4.0.16…無言!

http://dev.mysql.com/doc/refman/5.0/en/insert-select.html

This refers to mysql 4.1.6 and later versions for sure.

既然不能用,只好用土法練鋼法,當要新增大量資料時,可以使用EXCEL 來進行產生SQL檔(如果你有一些mysql 工具就不用這麼克難了,我是在執行的環境沒有才出此下策),怎麼產生呢?
利用excel 寫好insert 指令,把各值放到其它的欄位,這樣就可以整行COPY 過來產生SQL 語法,如下圖:

這邊要記住,在excel 的欄位如果字首要有單引號出現,就要輸入兩個單引號才會出現
好,當完成後就可以COPY 貼到文字檔,這時還要做一個動作,就是置換TAB
因為COPY 過來的insert 指令各欄位之間會用TAB符號區隔,這樣是不合用的
所以再把TAB符號換成空字串就完工了!!

備註: 9/20 update 
後來經測試,好像4.0.16的版本是可以支援insert select 的,不過能支援的語法比較單純,就是只能
insert into newtable select * from oldtable;
不能指定欄位
Categories: Database Tags:

Facebook如何移除應用程式

2012年7月24日 尚無評論

最近發現Facebook裡的有些應用程式,都會偷偷用你個人的名義發佈訊息並貼在你的塗鴉牆上,雖然都是自己授權它可以做,但往往大多數的人都一樣不會去管授權了什麼,呵~我就是其中之一 =.=||

找了一下,發覺其實要調整還蠻簡單的

1.首先,在右上方的首頁一旁有個向下的箭頭,按下後於出現的浮動選單之中,點選帳號設定

2.在左方的選單,選擇應用程式

3.可以於列表之中,刪除你想要的應用程式也可以

或是點選該應用程式編輯連結,則會出現詳細的資訊,可也以調整當初授權的各項設定,如下圖!

Categories: 小技巧 Tags:

PHP ini_set 可設定之項目

2012年7月13日 尚無評論

PHP有提供ini_set() 函式 可以在程式之中動態調整相關系統參數,有時一些虛擬平台不能讓你去設定參數時
或是你可以設定程式是否要動態啟用debug display時 就可以用這個方法去調整
不過要注意,並不是所有的參數設定都適用
目前只有 Changeable 欄位為 PHP_INI_USER 或 PHP_INI_ALL 才可以接受 ini_set() 設定。

http://tw.php.net/manual/en/ini.list.php

Categories: PHP Tags:

Android SQLite更新資料庫作法

2012年7月7日 尚無評論

這次在先前製作的Android Apps 有需要進行SQLite資料庫的更新
以為系統能完美的自動更新~XD 但看來還是沒有想像中的聰明
這兩年新的技術及資訊一直出來,讓我覺得似乎什麼都好像已經包好似的

好~轉正題,當SQLite資料庫要更新時該怎麼做呢?
其實Android早就有想到了(其實也規劃的不錯啦)

首先,在你實作連結SQLite的物件之中有個版本號,當你有異動時就往後加一,就和Apps要更版一樣要加版本號

pubilc class DatabaseHelper extends SQLiteOpenHelper {
private static final int DATABASE_VERSION = 1;

再來繼承SQLiteOpenHelper後,它提供了二個metohd,onCreate & onUpgrade 可以實作,我就擷錄人家寫的一段話來介紹這兩個method:

public void onCreate(SQLiteDatabase db)
這裡面的onCreate是指資料庫onCreate時,而不是DatabaseHelper的onCreate。也就是說,如果已經指定 database已經存在,那麼在重新運行程序的時候,就不會執行這個方法了。要不然,豈不是每次重新啟動程序都要重新建立一次資料庫了!在這個方法中,完成了資料庫的建立工作。也就是那個execSQL()方法。


public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)
在程序的開發維護過程中,資料庫的結構可能會有變化,那麼這個方法就有用處了。在DatabaseHelper這個對象一建立時,就已經把參數 DATABASE_VERSION傳入,這樣,如果Android發現此版本與現有版本不一致,就會調用這個onUpgrate方法。於是,可以在這裡面實現一些數據的upgrade工作,比如說建立一個臨時表,將數據由臨時表中轉到新的表結構中。需要注意的是,這裡面的onUpgrade是在版本不一致時調用,也就是說不管當前需要的版本高於現有版本還是低於現有版本,都會出發這個方法,類似的這種情況,就需要對oldVersion和 newVersion進行判斷之後再決定使用什麼策略來更新數據。

所以就把你要異動資料庫的script 寫在onUpgrade裡,還可以依照舊版本號及新的版本號看要執行哪些script,相容性的設計都考量進去了

這樣當上傳到android play(market)後,當有人下載更新時就會去執行更新的script了~^^

參考連結:http://www.cnblogs.com/linzheng/archive/2011/01/22/1942087.html

Categories: Android Tags: , ,
分頁: 上一頁 1 2 3 ... 10 11 12 13 14 15 16 ... 86 87 88 下一頁