PIXNET Logo登入

seacatcry的部落格

跳到主文

歡迎光臨seacatcry在痞客邦的小天地

部落格全站分類:電玩動漫

  • 相簿
  • 部落格
  • 留言
  • 名片
  • 10月 01 週一 201211:07
  • 解決VMWARE重新安裝出現時,會出現什麼MSI Failed的問題

節錄http://www.wretch.cc/blog/KENGI/14015056
1. start a DOS box
2. make a temp directory, for example, c:\temp
3. change directory to where you've downloaded WS Tech Preview
4. extract the .msi installer from the .exe by running the following command in DOS
cmd /C VMware-workstation-e.x.p-169612.exe -e c:\temp
5. when the command returns, you should see a "VMware Workstation.msi" and *.cab in c:\temp
6. Run VMware Workstation.msi by double clicking on it in Windows Explorer, or use msiexec
簡單來說就是:
1.開始->執行,輸入 cmd
2.創建一個臨時目錄,如:c:\temp,C:\>mkdir temp 
3.在 vmware-workstation-full-7.0.0-203739.exe的目錄下 執行命令
如:vmware-workstation-full-7.0.0-203739.exe 在d:\soft\
則在cmd窗口中如下
D:\soft\〉cmd /C vmware-workstation-full-7.0.0-203739.exe -e c:\temp
(繼續閱讀...)
文章標籤

abcdefg 發表在 痞客邦 留言(0) 人氣(7,301)

  • 個人分類:尚未分類
▲top
  • 4月 30 週一 201214:04
  • FireBird中UTF-8在Delphi中的使用难题

1、数据库charset设为utf-8;
2、字段charset设为utf-8;
3、数据库连接需指定lc_type,例:conn=DriverManager.getConnection("jdbc:firebirdsql:10.206.81.40/3050:/home/wangc/fbdb/newsutf8.gdb?lc_ctype=UTF8","sysdba","masterkey");
4、delphi中读取字段需使用Utf8ToAnsi,写字段需使用AnsiToUtf8;
(繼續閱讀...)
文章標籤

abcdefg 發表在 痞客邦 留言(0) 人氣(95)

  • 個人分類:尚未分類
▲top
  • 4月 24 週二 201211:58
  • 内存对齐 #pragma pack(n) __declspec(align(#))


看一下这两个指令是如何影响变量在内存的存储的。
1、pack pragma
pack pragma设置了struct、union或class中各成员的对齐方式,结构成员对齐指的是成员相对于起始地址的偏移量。该指令基本用法如下:
#pragma pack(n)
它指定了结构成员按n(1,2,4,8,16)字节对齐,如果未指定n,则恢复成默认值。需要注意的是,它并不是指结构体中的每个成员都要按n对齐,而是 按照每个成员的大小和n相比较小的值对齐。下面引用MSDN中C++ Preprocessor Reference部分关于pack指令的说明:
(繼續閱讀...)
文章標籤

abcdefg 發表在 痞客邦 留言(0) 人氣(239)

  • 個人分類:尚未分類
▲top
  • 4月 23 週一 201209:57
  • SQLite3增加新欄位

ALTER TABLE table_name ADD column_name column_type;
(繼續閱讀...)
文章標籤

abcdefg 發表在 痞客邦 留言(0) 人氣(2,288)

  • 個人分類:尚未分類
▲top
  • 4月 19 週四 201214:45
  • 在 SQLite 做 case-insensitive 的字串比對(自看用)

用 MySQL 開發的時候,如果 collation 選擇 utf8_general_ci,比較字串(使用等號 =)的時候大小寫的不同會被視為一致,但是 SQLite 並不會。解決的方法是加上 COLLATE NOCASE。
可以在 SELECT 的時候把 COLLATE NOCASE 擺在 LIMIT 1 前面:

SQLite version 3.7.7.1 2011-06-28 17:39:05
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> CREATE TABLE `users` (`id`, `user_name`, `email`);
sqlite> INSERT INTO `users` (`id`, `user_name`, `email`) VALUES (1,
'Repeat', 'REPEAT@example.com');
sqlite> INSERT INTO `users` (`id`, `user_name`, `email`) VALUES (2, 'repeattest1', 'repeattest1@example.com');
sqlite> SELECT * FROM `users` WHERE `user_name` = 'repeat';
sqlite> SELECT * FROM `users` WHERE `user_name` = 'Repeat';
1|Repeat|REPEAT@example.com
sqlite> SELECT * FROM `users` WHERE `user_name` = 'REPEAT';
sqlite> SELECT * FROM `users` WHERE `user_name` = 'REPEAT' COLLATE NOCASE;
1|Repeat|REPEAT@example.com
sqlite> SELECT * FROM `users` WHERE `user_name` = 'repeat' COLLATE NOCASE;
1|Repeat|REPEAT@example.com
sqlite> SELECT * FROM `users` WHERE `user_name` = 'repEat' COLLATE NOCASE;
1|Repeat|REPEAT@example.com
sqlite> SELECT * FROM `users` WHERE `user_name` = 'repEat' COLLATE NOCASE LIMIT 1;
1|Repeat|REPEAT@example.com
sqlite> SELECT * FROM `users` WHERE `user_name` = 'repEat' LIMIT 1 COLLATE NOCASE;
(繼續閱讀...)
文章標籤

abcdefg 發表在 痞客邦 留言(0) 人氣(415)

  • 個人分類:尚未分類
▲top
  • 3月 21 週三 201210:25
  • Sqlite3(自看)

OS X自從10.4後把SQLite這套相當出名的資料庫軟體,放進了作業系統工具集裡。OS X包裝的是第三版的SQLite,又稱SQLite3。這套軟體有幾個特色:
* 軟體屬於公共財(public domain),SQLite可說是某種「美德軟體」(virtueware),作者本人放棄著作權,而給使用SQLite的人以下的「祝福」(blessing):
o May you do good and not evil. 願你行善莫行惡
o May you find forgiveness for yourself and forgive others. 願你原諒自己寬恕他人
o May you share freely, never taking more than you give. 願你寬心與人分享,所取不多於你所施予 
* 支援大多數的SQL指令(下面會簡單介紹)。
* 一個檔案就是一個資料庫。不需要安裝資料庫伺服器軟體。
* 完整的Unicode支援(因此沒有跨語系的問題)。
* 速度很快。 
目前在OS X 10.4裡,SQLite是以/usr/bin/sqlite3的形式包裝,也就說這是一個命令列工具,必須先從終端機(Terminal.app或其他程式)進入shell之後才能使用。網路上有一些協助使用SQLite的視覺化工具,但似乎都沒有像CocoaMySQL(配合MySQL資料庫使用)那般好用。或許隨時有驚喜也未可知,以下僅介紹命令列的操作方式。
SQLite顧名思議是以SQL為基礎的資料庫軟體,SQL是一套強大的資料庫語言,主要概念是由「資料庫」、「資料表」(table)、「查詢指令」(queries)等單元組成的「關聯性資料庫」(進一步的概念可參考網路上各種關於SQL及關聯性資料庫的文件)。因為 SQL的查詢功能強大,語法一致而入門容易,因此成為現今主流資料庫的標準語言(微軟、Oracle等大廠的資料庫軟體都提供SQL語法的查詢及操作)。
以下我們就建立資料庫、建立資料表及索引、新增資料、查詢資料、更改資料、移除資料、sqlite3命令列選項等幾個項目做簡單的介紹。
目錄
[隱藏]
* 1 建立資料庫檔案
* 2 在sqlite3提示列下操作
* 3 SQL的指令格式
* 4 建立資料表
* 5 建立索引
* 6 加入一筆資料
* 7 查詢資料
* 8 如何更改或刪除資料
* 9 其他sqlite的特別用法
* 10 小結
[編輯]
建立資料庫檔案
用sqlite3建立資料庫的方法很簡單,只要在shell下鍵入(以下$符號為shell提示號,請勿鍵入):
$ sqlite3 foo.db3
如果目錄下沒有foo.db3,sqlite3就會建立這個資料庫。sqlite3並沒有強制資料庫檔名要怎麼取,因此如果你喜歡,也可以取個例如foo.icannameitwhateverilike的檔名。
[編輯]
在sqlite3提示列下操作
kl;kjlkjljklkjkj 進入了sqlite3之後,會看到以下文字:
SQLite version 3.1.3
Enter ".help" for instructions
sqlite> 
這時如果使用.help可 以取得求助,.quit則是離開(請注意:不是quit)
[編輯]
SQL的指令格式
所有的SQL指令都是以分號(;)結尾的。如果遇到兩個減號(--)則代表註解,sqlite3會略過去。
[編輯]
建立資料表
假設我們要建一個名叫film的資料表,只要鍵入以下指令就可以了:
create table film(title, length, year, starring);
這樣我們就建立了一個名叫film的資料表,裡面有name、length、year、starring四個欄位。
這個create table指令的語法為:
create table table_name(field1, field2, field3, ...);
table_name是資料表的名稱,fieldx則是欄位的名字。sqlite3與許多SQL資料庫軟體不同的是,它不在乎欄位屬於哪一種資料型態:sqlite3的欄位可以儲存任何東西:文字、數字、大量文字(blob),它會在適時自動轉換。
[編輯]
建立索引
如果資料表有相當多的資料,我們便會建立索引來加快速度。好比說:
create index film_title_index on film(title);
意思是針對film資料表的title欄位,建立一個名叫film_title_index的索引。這個指令的語法為
create index index_name on table_name(field_to_be_indexed);
一旦建立了索引,sqlite3會在針對該欄位作查詢時,自動使用該索引。這一切的操作都是在幕後自動發生的,無須使用者特別指令。
[編輯]
加入一筆資料
接下來我們要加入資料了,加入的方法為使用insert into指令,語法為:
insert into table_name values(data1, data2, data3, ...);
例如我們可以加入
insert into film values ('Silence of the Lambs, The', 118, 1991, 'Jodie Foster');
insert into film values ('Contact', 153, 1997, 'Jodie Foster');
insert into film values ('Crouching Tiger, Hidden Dragon', 120, 2000, 'Yun-Fat Chow');
insert into film values ('Hours, The', 114, 2002, 'Nicole Kidman');
如果該欄位沒有資料,我們可以填NULL。
[編輯]
查詢資料
講到這裡,我們終於要開始介紹SQL最強大的select指令了。我們首先簡單介紹select的基本句型:
select columns from table_name where expression;
最常見的用法,當然是倒出所有資料庫的內容:
select * from film;
如果資料太多了,我們或許會想限制筆數:
select * from film limit 10;
或是年份比較早的電影先列出來(預設為 asc):
select * from film order by year limit 10;
或是年份比較晚的電影先列出來:
select * from film order by year desc limit 10;
或是我們只想看電影名稱跟年份:
select title, year from film order by year desc limit 10;
查所有茱蒂佛斯特演過的電影:
select * from film where starring='Jodie Foster';
查所有演員名字開頭叫茱蒂的電影('%'、'_' 符號便是 SQL 的萬用字元,前者代表任意長度字元,後者代表任意一個字元):
select * from film where starring like 'Jodie%';
查所有演員名字以茱蒂開頭、年份晚於1985年、年份晚的優先列出、最多十筆,只列出電影名稱和年份:
select title, year from film where starring like 'Jodie%' and year >= 1985 order by year desc limit 10;
有時候我們只想知道資料庫一共有多少筆資料:
select count(*) from film;
有時候我們只想知道1985年以後的電影有幾部:
select count(*) from film where year >= 1985;
(進一步的各種組合,要去看SQL專書,不過你大概已經知道SQL為什麼這麼流行了:這種語言允許你將各種查詢條件組合在一起──而我們還沒提到「跨資料庫的聯合查詢」呢!)
[編輯]
如何更改或刪除資料
瞭解select的用法非常重要,因為要在sqlite更改或刪除一筆資料,也是靠同樣的語法。
例如有一筆資料的名字打錯了:
update film set starring='Jodie Foster' where starring='Jodee Foster';
就會把主角欄位裡,被打成'Jodee Foster'的那筆(或多筆)資料,改回成Jodie Foster。
delete from film where year > 1970;
就會刪除所有年代早於1970年(不含)的電影了。
[編輯]
其他sqlite的特別用法
sqlite可以在shell底下直接執行命令:
sqlite3 film.db "select * from film;"
輸出 HTML 表格:
sqlite3 -html film.db "select * from film;"
將資料庫「倒出來」:
sqlite3 film.db ".dump" > output.sql
利用輸出的資料,建立一個一模一樣的資料庫(加上以上指令,就是標準的SQL資料庫備份了):
sqlite3 film.db < output.sql
在大量插入資料時,你可能會需要先打這個指令:
begin;
插入完資料後要記得打這個指令,資料才會寫進資料庫中:
commit;
[編輯]
小結
以上我們介紹了SQLite這套資料庫系統的用法。事實上OS X也有諸於SQLiteManagerX這類的圖形介面程式,可以便利資料庫的操作。不過萬變不離其宗,瞭解SQL指令操作,SQLite與其各家變種就很容易上手了。
至於為什麼要寫這篇教學呢?除了因為OS X Tiger大量使用SQLite之外(例如:Safari的RSS reader,就是把文章存在SQLite資料庫裡!你可以開開看~/Library/Syndication/Database3這個檔案,看看裡面有什麼料),OpenVanilla從0.7.2開始,也引進了以SQLite為基礎的詞彙管理工具,以及全字庫的注音輸入法。因為使用SQLite,這兩個模組不管資料庫內有多少筆資料,都可以做到「瞬間啟動」以及相當快速的查詢回應。
將一套方便好用的資料庫軟體包進OS X中,當然也算是Apple相當相當聰明的選擇。再勤勞一點的朋友也許已經開始想拿SQLite來記錄各種東西(像我們其中就有一人寫了個程式,自動記錄電池狀態,寫進SQLite資料庫中再做統計......)了。想像空間可說相當寬廣。
目前支援SQLite的程式語言,你能想到的大概都有了。這套資料庫2005年還贏得了美國O'Reilly Open Source Conference的最佳開放原始碼軟體獎,獎評是「有什麼東西能讓Perl, Python, PHP, Ruby語言團結一致地支援的?就是SQLite」。由此可見SQLite的地位了。而SQLite程式非常小,更是少數打 "gcc -o sqlite3 *",不需任何特殊設定就能跨平臺編譯的程式。小而省,小而美,SQLite連網站都不多贅言,直指SQL語法精要及API使用方法,原作者大概也可以算是某種程式設計之道(Tao of Programming)裡所說的至人了。
Enjoy /usr/bin/sqlite3 in your OS X Tiger. :) 
(繼續閱讀...)
文章標籤

abcdefg 發表在 痞客邦 留言(0) 人氣(8,145)

  • 個人分類:尚未分類
▲top
  • 2月 11 週六 201215:42
  • 如何批量处理Word中的图片大小(自看用)

Sub setpicsize()
Dim j '???片??
For j = 1 To ActiveDocument.InlineShapes.Count '文件中?片???,?片?型?inlineshapes
ActiveDocument.InlineShapes(j).Height = 124 '?置高度
ActiveDocument.InlineShapes(j).Width = 130 '?置?度
Next j
End Sub
(繼續閱讀...)
文章標籤

abcdefg 發表在 痞客邦 留言(0) 人氣(165)

  • 個人分類:尚未分類
▲top
  • 1月 20 週五 201217:16
  • 【轉貼】\r\n和\n的差異

1.
\r\n或是\n都是換行的意思,請記得,是\r\n,不是\n\r
\r\n通常是微軟的文件會產生的,在其它的編輯器裡面,會在一行的節尾看到 ^M,那就是\r\n
在php中,字串中的\r\n或\n,要用雙引號才有效。
(繼續閱讀...)
文章標籤

abcdefg 發表在 痞客邦 留言(8) 人氣(171,918)

  • 個人分類:尚未分類
▲top
1

個人資訊

abcdefg
暱稱:
abcdefg
分類:
電玩動漫
好友:
累積中
地區:

熱門文章

  • (171,918)【轉貼】\r\n和\n的差異
  • (28,900)解決Word表格相互疊加、錯亂的問題
  • (8,145)Sqlite3(自看)
  • (7,301)解決VMWARE重新安裝出現時,會出現什麼MSI Failed的問題
  • (1,304)Dev C++ 寫win Socket程式設定
  • (415)在 SQLite 做 case-insensitive 的字串比對(自看用)
  • (225)WS2TCPIP.H
  • (3)解決編譯 WinSock 產生的error(編譯器DEV)

我是標題

toggle JAVA (1)
  • 圖學 (1)
toggle 閒聊 (0)
    toggle 重點 (5)
    • 文書 (1)
    • LUA (2)
    • Flash (1)
    • COM (0)
    • AUTOIT (0)
    toggle 筆記 (5)
    • AUTOIT (0)
    • Winsock (2)
    • 網路 (1)
    • LUA (4)
    • 組合語言 (0)
    • 尚未分類 (8)
    • 未分類文章 (1)

    最新文章

    • Toolkit.getDefaultToolkit().getImage(應該放什麼?)
    • 防鎖
    • 解決VMWARE重新安裝出現時,會出現什麼MSI Failed的問題
    • Windows 修復主控台說明
    • Dev C++ 寫win Socket程式設定
    • WS2TCPIP.H
    • 解決編譯 WinSock 產生的error(編譯器DEV)
    • 【EP1】RakNet體驗
    • 【EP7】LUA Library
    • 【EP4】Chapter 7. Iterators and the Generic for

    最新留言

    • [24/09/12] 訪客 於文章「【轉貼】\r\n和\n的差異...」留言:
      謝謝大哥...
    • [19/07/11] 白白 於文章「解決Word表格相互疊加、錯亂的問題...」留言:
      謝謝您,幫了我大忙!!...
    • [19/01/15] 路過的貓 於文章「【轉貼】\r\n和\n的差異...」留言:
      最後的C/C++語言部份講錯了 cout << "haha...
    • [18/02/22] 123\r\n 於文章「【轉貼】\r\n和\n的差異...」留言:
      123\r\n 123\r\n 123<br> 123...
    • [18/02/12] 7 於文章「【轉貼】\r\n和\n的差異...」留言:
      8...
    • [17/06/15] 23346 於文章「【轉貼】\r\n和\n的差異...」留言:
      653 26532 ...
    • [17/05/20] Hughes 於文章「【轉貼】\r\n和\n的差異...」留言:
      非常詳細 謝謝分享! 回2F: 我測試過,應該是/r/n...
    • [17/03/13] a1a92002 於文章「解決Word表格相互疊加、錯亂的問題...」留言:
      多謝了 解決了我表格的問題 讚啦~~...
    • [16/05/27] 嘎嘎 於文章「解決Word表格相互疊加、錯亂的問題...」留言:
      謝謝!終於解決了頭痛已久的大麻煩~ 耶!!...
    • [15/09/15] 訪客 於文章「【轉貼】\r\n和\n的差異...」留言:
      "\r\n通常是微軟的文件會產生的" "Windows系統...

    動態訂閱

    文章精選

    文章搜尋

    誰來我家

    參觀人氣

    • 本日人氣:
    • 累積人氣: