做專案的一點收穫之二

2022-03-01 13:08:51 字數 1442 閱讀 6656

寫登錄檔

程式中要求有個開機自動執行的備選功能,在網上查了查,大概有三種方法實現開機自動執行:開始選單中的「啟動」組,windows服務,寫登錄檔。我選擇了寫登錄檔,**如下:

if(this

.checkbox1.checked

==true

)else

使用委託

因為不能夠向執行緒傳遞引數(可以定義乙個類,準備好執行緒要使用的資料,然後把該類的方法傳遞給執行緒委託),也不會返回值,因此要想從執行緒返回值,可以使用委託。委託使用方法見

c#中的**(delegate)

檢測網路

程式要求在連線資料庫之前要先檢測網路是否連通,所以這裡又用到了基於套接字的程式設計。

public

bool

checknet(

string

netid,

intport)

}catch

return

flag;

}最小化到系統托盤

設定窗體的sizechanged事件,如下 :

private

void

form1_sizechanged(

object

sender, system.eventargs e)

}mysql引數化查詢

這個專案針對的是mysql資料庫,以前沒有用過,所以在寫引數化查詢語句還是像寫sql server和access引數化查詢語句時一樣,例如一條查詢語句:

cmmd.commandtext="

update tablename set name=@name,data=@data where id=@id";

cmmd.parameters.add("@

"+clmname[

0],mysql.data.mysqlclient.mysqldbtype.string);

cmmd.parameters[

0].value ="

peter

"cmmd.parameters.add("@

"+clmname[

1],mysql.data.mysqlclient.mysqldbtype.longblob);

cmmd.parameters[

1].value 

=bytearraydata;

cmmd.parameters.add(mysql.data.mysqlclient.mysqldbtype.int32);

cmmd.parameters[

0].value ="

20051102

"但就是怎麼都更新不了,也沒有錯誤資訊,後來經人指點才知道,原來mysql的引數佔位符是"?",我把cmmd.commandtext中的"@"改成"?"後就可以了。

讀C Primer 一點收穫

以前總是看別人的部落格,且聽說搞it的應該有總結收穫和分享的習慣,於是乎有了寫的衝動。最近剛看完c primer 4th,感覺收穫還是挺多的,借部落格記錄之。看這本書的動機一大半是問了充實自己便於兩年後的找工作。之前對c 的了解完全 於大 一 大2時的課程。從類之後時,就開始一頭霧水了,最多也是課上...

2014的一點收穫

1.工具類 emacs,git,gtags。1.1 emacs 比較喜歡快捷鍵,尤其像我這種有 儲存強迫症 的人,比vi方便一些。1.2 git 神奇的東西,對我這種公司svn伺服器不好用,又懶得在本機搭伺服器的人,用起來很方便。1.3 gtags 水木上看到的,一用起來果然神奇,果斷拋棄etags...

STL的一點收穫(排序)

今天又學到了一點新東西,拿出來大家分享一下,一下內容部分為摘抄。本來在做一道tx14年的面試題,題中需要用到排序,本來想用自帶的快排函式qsort 突然想起stl應該有自己的排序演算法,於是搜了一下,果然有,但是又不了解兩者之間的好壞,大神知道記得說一聲。加標頭檔案algorithm sort預設是...