PIXNET Logo登入

是 我的部落格

跳到主文

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

部落格全站分類:美食情報

  • 相簿
  • 部落格
  • 留言
  • 名片
  • 8月 27 週五 201016:05
  • WINCE 下載檔案

 
在 wince 平台下,要下載檔案的程式碼片段:
           
                string URLAddress = ""; //載點
                string dl_name = "";    //存檔路徑
 
                HttpWebRequest lHttpWebRequest;
                HttpWebResponse lHttpWebResponse;
                Stream lHttpWebResponseStream;
                FileStream lFileStream = new FileStream(dl_name, FileMode.Create);
                byte[] byteBuffer = new byte[999];
                int bytesRead;

                try
                {

                     //發送請求
                    lHttpWebRequest = (HttpWebRequest)System.Net.WebRequest.Create(URLAddress);  

                   //請求後,回傳過來的資料
                    lHttpWebResponse = (HttpWebResponse)lHttpWebRequest.GetResponse();   

                    //保留下,回傳的串流資料

                    lHttpWebResponseStream = lHttpWebResponse.GetResponseStream();                         


                    do
                    {
                        bytesRead = lHttpWebResponseStream.Read(byteBuffer, 0, 999);            //讀取串流資料
                        lFileStream.Write(byteBuffer, 0, bytesRead);    //寫檔
                    } while (bytesRead > 0);

 

                    lHttpWebResponseStream.Close();

                }
                catch (Exception download_error)
                {
                    Console.WriteLine(download_error.Message);
                }
                finally
                {
                    lFileStream.Close();
                }
            
參考網址:
http://msdn.microsoft.com/en-us/library/aa446517.aspx
http://tw.myblog.yahoo.com/bruce0211/article?mid=225&prev=234&next=222
 
(繼續閱讀...)
文章標籤

是 我 發表在 痞客邦 留言(1) 人氣(342)

  • 個人分類:電腦和網際網路
▲top
  • 7月 18 週日 201017:41
  • 真是好用的 MSN 部落落

過去,我不想使用 無名、 FB、Blogger ~~ 是因為我覺的我 MSN 都會一直掛著,直接用 微軟就好了;
 
今天整理一下,以前寫過的文章類別,發覺一些圖因為檔名相同的關系,「被蓋掉了,真是有夠好用上傳圖片功能呀!」
 
改個類別,今天就出現 好多次的網頁資料處理錯誤,一直要重登入。
 
 = = 看樣子我該開考慮 FB 了,上面好像只有一篇文章而已吧!
(繼續閱讀...)
文章標籤

是 我 發表在 痞客邦 留言(0) 人氣(154)

  • 個人分類:電腦和網際網路
▲top
  • 6月 29 週二 201023:19
  • Window+GCC+CDT用Eclipse開發C or C++ -2


使用 Eclipse+CDT+MinGW 編寫 Linux 程式,如果要用到 thread 的話,預設沒有(我的版本沒有),必須額外載入套件「pthreads-w 32-2-8 -0-release.exe」。解壓出來後有三個套件目錄:Pre-built.2、pthreads.2、QueueUserAPCEx。


 


1、Download pthreads-w32-2-8-0-release.exe 。 http://www.mirrorservice.org/sites/sourceware.org/pub/pthreads-win32/


 



聽說:因為pthread 不是預設的 Linux 函式庫,連接時需要使用靜態庫 libthread.a 才可使用 pthread_create() 建立執行緒,等其它執行緒處理的方式;因此需要在載入相關的套件。


 


◎步驟一、在先前建置Eclipse+CDT+MinGW 環境所設的三個環境變數中,都加入 Pre-built.2、pthreads.2 相關的鏈接位置,這是我使用的方式;有看到人直接「把Pre-built.2中的libpthreadGC2.a改名為libpthread.a複製到c:\mingw\lib目錄,pthread.h複製到c:\mingw\include目錄即可解决,我當時試是不行,可能我有漏東西吧!」。


 


程式碼中可載入套件,但在eclipse中編譯時會出現錯誤:
  undefined reference to 'pthread_create'
  undefined reference to 'pthread_join'


 


◎步驟二:在編譯要多設參數,最快最方便的方式,在 Project 下的 Properties 下的 C/C++ Build 中的 Setting 下的 Tool Settings 中的 GCC C++ Complier 進行設定,如圖2,在 Command 中多加入 「- l pthread 」參數,


 


◎步驟三:同時也在另一個參數設定Expert Settings 中加入 「- l pthread」。在 MinGW C++ Linker 中也是進行相同的設定動作,如圖3 所示。之後即可編譯成功。


 



圖 2 GCC C++ Compiler



圖 3 MinGW C++ Linker


  


2、使用Pthread參考網址


C.         http://blog.tianya.cn/blogger/post_show.asp?BlogID=797111&PostID=23966420&idWriter=0&Key=0


D.        http://www.360doc.com/content/10/0407/15/1066294_21950629.shtml


E.         http://tw.myblog.yahoo.com/yh-chiang/article?mid=707&prev=719&next=701

(繼續閱讀...)
文章標籤

是 我 發表在 痞客邦 留言(0) 人氣(824)

  • 個人分類:電腦和網際網路
▲top
  • 6月 29 週二 201023:18
  • Window+GCC+CDT用Eclipse開發C or C++ - 1


在不熟Linux作業系統的情況下寫程式(C++ or C),用 Windows作業系統來模擬在 Linux 下寫程式的好法子為 Eclipse+CDT(gcc, g++)+MinGW,主要考量此方式有提供模擬Linux compiler,makefile的功能;同時編譯出的程式,可以直接佈署在Linux環境上。


 


1、Download JDK or JRE,因為 Eclipse需要。http://java.sun.com/javase/downloads/index.jsp


 


2、Download Eclipse,因為這是開發環境。http://www.eclipse.org/downloads/


 


3、Download CDT(C/C++ Development Tooling),因為,你要寫C/C++ 。http://www.eclipse.org/cdt/


這點我覺的裝完Eclipse 後,用線上更新的方式去下載相關套件比較方便。否則就是將載回來的檔案,將解壓縮後的features、plugins整個資料夾複製到Eclipse安裝資料裡,重新開啟Eclipse即可。


 


4、Download MinGW,它可在Windows上使用的GNU C、C++編譯器。http://sourceforge.net/downloads/mingw/


 


5、設定環境變數:先在Command Line模式下測試編譯與執行。先將C:\MinGW\bin底下的mingw32-make.exe更名為make.exe,因為待會在Eclipse使用時它預設會抓系統裡make這個檔名而不是mingw32-make。(註:如果不更名或是還有其他make程式時,也可以在稍後的Eclipse設定中,在make targets view的地方,新增一個task時,build command 取消use default , 使用 mingw32-make,或在project properties->make project ->將make 改為 mingw32-make )。
在環境變數裡加入下列設定:
PATH
: C:\MinGW\bin; (如果系統已經有裝其它C/C++編譯器,請把C:\MinGW\bin加在最前面。)
LIBRARY_PATH
:
C:\MinGW\lib
C_INCLUDE_PATH
:
C:\MinGW\include
CPLUS_INCLUDE_PATH
:
C:\MinGW\include\c++\3.2.3;C:\MinGW\include\c++\3.2.3\mingw32;
C:\MinGW\include\c++\3.2.3\backward;C:\MinGW\include


6、測試


先使用文字編輯器編寫測試用的原始檔,檔名:main.cpp。







1
2
3
4
5
6


#include <iostream>


using namespace std;


 


int main(void) {


    cout << "Can You Feel My World?" ;



    return 0;


}



在Command Line下編譯指令:







1


C:\g++ main.cpp -O3 -o hello



(O3的O是英文大寫"歐")
編譯成功後:便會產生hello.exe的執行檔。

執行畫面如下:







1
2
3
4
5


C:\Documents and Settings\Sungo>cd\ 


 


C:\>g++ main.cpp -O3 -o hello


 


C:\>hello


Can You Feel My World?


C:\>



註:-O3 旗標表示採最高級編譯最佳化,編譯速度最慢,但產生的執行檔
檔案會最小,執行速度會最快;-o 旗標表示將編譯完的*.exe重新更名。
◎步驟一.開啟Eclipse後,首先先開啟C/C++專用視景。
Windows->Open Perspective->C/C++ Development
◎步驟二.建立一個C++用的專案。
File-New->Project->C++->Standard Make C++ Project
(
接下來的步驟跟建立一般的Java專案一樣,皆採預設即可)
◎步驟三.把我們剛剛寫的main.cpp import進來,加到專案裡。

File->Import->File System->
瀏覽C:\main.cpp
◎步驟四.建立一個makefile。

File->New->File
,檔案名稱填:makefile。(不需打副檔名)
makefile
內容如下:







1
2


all:


    g++  main.cpp -g -o run



注意:makefile縮排要以Tab鍵作縮排,不能以空格4作縮排,
否則Build會有問題。
◎步驟五.設定Make Targets。
Windows-Show View->Make Targets
;在Make Targets視窗裡按滑鼠右鍵,Add Build Target,name打:編譯。Build Target打:all。
◎步驟六.編譯。
在剛剛建立的Make Targets "編譯" 上點滑鼠2下,即會開始編譯,此時我們可以發現hello.exe已經產生在我們專案下了。可在底下C-Build視窗看到以下輸出結果:







1
2


make -k all


g++  main.cpp -g -o run



◎步驟七. *.exe執行前設定。因為在Windows下Run,所以要先作個設定,請開啟Project->Properties->C/C++ Make Project->Binary Parser頁面。Binary Parser下拉式選單,將ELF Parser改成PE Windows Parser。
◎步驟八.執行。
Run->Run as->C Local Application
。在底下Consloe視窗看到hello.exe的執行結果。註:當原始檔有修改,要重新編譯時,只要滑鼠雙擊我們在步驟五
所建立的Make Targets "編譯",即可Rebuilding。


7、環境建置參考網址:


A.        http://www.javaworld.com.tw/jute/post/view?bid=10&id=53262&sty=1&tpg=1&age=0


B.         http://nknush.kh.edu.tw/~johnsirhp/Eclipse%2BCDT%2BMinGW.htm


 


 

(繼續閱讀...)
文章標籤

是 我 發表在 痞客邦 留言(4) 人氣(3,586)

  • 個人分類:電腦和網際網路
▲top
  • 6月 27 週日 201022:49
  • 關鍵需求決定架構

ADMEMS  ( Architecture Design Method has been Extended to Method System )
 
參考資料:
1、http://www.csai.cn/admems/
 
2、Book:一線架構師實踐指南
 
(繼續閱讀...)
文章標籤

是 我 發表在 痞客邦 留言(0) 人氣(46)

  • 個人分類:電腦和網際網路
▲top
  • 3月 25 週四 201019:03
  • Design Pattern 速查表

 
如題:還滿有搞頭的~~
 
1、http://www.mcdonaldland.info/2007/11/28/40/
 
2、http://blog.acodingfool.com/cheatsheets/design-patterns-cheatsheet/
 
3、檔案在公開的 參考文件 目錄下
 
 
 
(繼續閱讀...)
文章標籤

是 我 發表在 痞客邦 留言(0) 人氣(39)

  • 個人分類:電腦和網際網路
▲top
  • 3月 07 週日 201021:20
  • CMMI 2

已前我覺的 CMMI 的認證雖然有作用,但是應該是一個「塞」! = = , 要做的事情應該會不少,果真是如此~~~最近公司終於過了 CMMI 2 的認證,這過程製定了公司許多要執行的流程,不可否認的的確是有益處,認證過程對執行專案的認知加強了不少;不過對於未來 L3 的日子還漫長的很 ~~~
 
 
 
(繼續閱讀...)
文章標籤

是 我 發表在 痞客邦 留言(1) 人氣(46)

  • 個人分類:電腦和網際網路
▲top
  • 2月 03 週三 201019:10
  • CMMI高能力成熟度評鑑(SCAMPI)之探討


CMMI高能力成熟度評鑑(SCAMPI)之探討
(困難與障礙,評鑑要點)
Dr. Chaw-Kwei Hung 洪肇奎
12/9/2009


 


     本人於98年12月9日下午參加經濟部工業局舉辦「98年度提升資訊軟體品質(CMMI)計畫成果發表會」,並獲頒「贊襄良多」獎,非常高興得到這個肯定。對於我來說這次得獎具有格外的意義,因為我從美國NASA退休之後,特別回台協助輔導台灣的廠商,目前已輔導過台灣多家的廠商,日前成功輔導中冠、鼎升兩間公司通過CMMI ML 4認證,藉此機會跟大家分享CMMI高能力成熟度評鑑之困難與要點。
    CMMI
高能力成熟度評鑑,從主任評審委員的角度了解評鑑CMMI高能力成熟度所面臨的障礙,且將主任評審委員的看法清清楚楚地訴諸各位。首先提出台灣在進行CMMI高能力成熟度評鑑之時,主要的問題及重點之處為何?台灣目前不僅在產業升級面臨困難,且還須與中國、南韓等國家競爭,所以需藉由製造更高品質的產品,以提升國家產業的競爭力。
   
我曾帶領美國太空總署NASA的工程師執行許多計畫,也曾參與過台灣產業界及學術界之研究與發展,以豐富實務經驗看來,台灣跟西方之間主要不同之處為文化的差異,例台灣的工程師拿到計畫之後,馬上進行程式碼撰寫、缺乏進行細緻需求發展與規劃的工作,以致缺乏「真正的規劃面」,我們不重視計畫規劃的文化,面臨軟體系統工程的四大問題:
 
















  1).


重工率太多:例台灣工程師工作時數長,在需求不明確、規劃及設計不佳的情況下就埋頭苦幹,以致之後不斷地修改與重工。不知須先產生需求文件及專案規劃文等。


  2).


重用率太少:專案經驗、程式文件、設計測試案例等的再利用率。舉例來說,各計劃皆有資料控管,但資料庫控管的設計不是基於專業分工的考量,以致於資料不能夠再利用,資料之間沒有知識的連結,也就是說每個人都有資料管理,但因不利用他人的資料管理,反而產生更多不必要之成本。


  3).


制度不落實:無按部就班,制度面與執行面不符合,中階主管的阻礙,造成上下標準不一,不能按部就班落實制度。


  4).


缺少橫向溝通:「官大學問大」,各部門之間的協調太少,包括硬體及軟體、開發與管理的團隊溝通做不好。


 


    以上四大問題要如何解決?怎樣去避免重工率、提高重用率等等,這些都需利用到量化管理方法。所以,顯然地應落實高能力成熟度之量化管理方法方能解決上訴的問題。各位都了解CMMI ML2及ML3主要關鍵在於建立基礎的執行方法,但並無法確切掌控執行的品質與效能,直到ML4之時才能驗證是否在對的時間做出對的事情。
    SEI
最近二年,特別針對ML2、ML3及High Maturity(ML4、ML5)之間訂出不同的規定,SEI對於High Maturity100%完全審核,所以門檻相對提高,此外目前CMMI所使用的V1.2版又比V1.1版困難許多,實際上此次通過CMMI ML4中冠、鼎升二間公司花了相當的時間摸索CMMI-DEV V1.2版,同樣地SEI也在摸索,了解V1.2版所產出的文件還不夠詳細,進而產出1.2版A也就是將來的 V1.3版,將在未來二年內正式實施,而這次通過認證二間公司表面上使用1.2版但實際上已實施CMMI-DEV version 1.3版。
   
且SEI進行認證中清楚訂出高成熟度的方向必須跟公司營運目標一致,並不是為了Model而Model,必須實際依照公司營運目標而去執行,而依各公司的營運目標不同,例中冠要開發新產品,工研院要研發新技術等等,所以不能藉由他家公司的資料套用在自家公司裡,這些在CMMI高能力成熟度是不可能出現。
    CMMI
高能力成熟度認證時重要的依據為何?而主任評審委員究竟希望看到什麼?台灣首要問題在於高階主管思維與管理模式須改變。中冠、鼎升皆進行二次的Class B,審查當時,主任評審委員表示二家公司距離通過認證的標準甚遠,主要因素在於台灣高階主管思維須改變,以下為本人針對高階主管思維必須改變歸納出七項看法:


 

























 1).


願景(vision):身為公司高階主管清楚地知道公司未來的願景,同時也必須第一個了解以下問題。
公司未來三至五年之間要究竟何去何從?
如果能夠持續經營,期望公司的前景為何?
可否跟同業競爭?如何在技術管理方面超出同業?


 2).


矛盾論:高階主管需有哲學的概念。作為高階主管須知公司的組織矛盾為何,而組織矛盾又分外部矛盾及內部矛盾二種,充分了解公司變化的依據、生產力與生產的關係、部門與部門間的關係及新舊問題等內部矛盾,進而了解因社會所產生的變化條件及環境、技術等外部矛盾。之後藉由整合矛盾想出針對矛盾的解決方法,但不能帶有主觀性、片面性及表面性,要深入知曉矛盾的意義。而根據不同面向的矛盾,透過CMMI ML4作法首要解決特殊性(相對性)矛盾,如由流程、子流程之改善找出主要矛盾、次要矛盾,再經過統一、一致性的解決。最後依據CMMI ML5的標準,開始著手解決普遍性與絕對性的矛盾,從技術的革新到流程的革新,進而提升投資報酬率(Return of Investment, ROI))。從中我們可以了解各環節是息息相關的,一個環節不佳將影響整個的後續發展。



 3).


實踐論:空談理論無用,所有的改進源自實踐。實踐意即須經度量與分析之後所產生的感覺與印象階段,資料無法馬上理性解決,絕對經過感性認識階段,將豐富的感覺資料透過合乎實際、無零缺不全的處理之後,再次經過度量分析之後並且建構資料庫,最後進入理性認識階段。無經過感性認識階段,不可能達成理性認識階段,且依序不斷地改善,這是實踐論的必然現象。
最困難之處在於流程的改善,因為公司內部不只有贊同的人,相對地也具有很多的反對力量,他可能是教條主義者,意即什麼是皆以理論為基礎但不切實際。必須提及的是公司改革最大的障礙為中階主管,因中階主管不僅年資久且極度不安定感,所以造成觀念的轉化不易,但這些都是要克服的,但中/高階主管一定要充分認識此概念。



 4).


領先指標(Leading indicators) vs 事後指標(Lagging indicators):事前不斷地改進與預防好過事後解決問題。身為高階主管須具備預測的能力去辨認,不只重視成果還需要有領先指標(Leading indicators),而每一個成果都需3-5個leading indicators,如設計階段須知道最終產品品質的好壞,且在設計階段即可進行改進。因此Successful indicators不只包括lagging indicators,還須leading indicators。


 5).


持續品質改善:流程的改善不是一步而成,必須不斷的改善,一個國家不可能藉由一個5年計畫來專門改善公司品質,而之後就停頓。


 6).


專業分工的落實:工程師若從需求、設計、coding到測試都是由自身去執行,在台灣的文化裡看來是個非常好的人才,但相對地因工作無法專業分工。專業能力不足,以致無論怎麼努力還是達不到所期望之成果,更造成人才浪費,如生產力無法提升、無法達成外包的目標等等,所以高階主管一定要有專業分工的概念。


 7).


決策分析概念的運用:決策分析的流程不只運用至技術面,還可運用至管理面,因為作為高階主管的思維須以科學的角度去管理計畫的完整性。



   
以上則是SEI的主任評審員(Lead appraiser)來台灣評鑑CMMI高成熟度的重點,主要關鍵來自高階主管及中階主管的思維。
   
再來則是高階主管須了解導入CMMI高成熟度不能只空喊「大躍進」口號,更要與公司的營運目標結合。在CMMI高成熟度明確地定義公司的營運目標與CMMI 高成熟度的目標之間有著密不可分的關係,且並為高成熟度的各流程領域基準點,而各流程依過去公司執行的成果,所產出實際歷史的資料去改進。
   
評鑑的重點,實際導入組織部門範圍及導入特定的個案。實際導入組織部門範圍這是SEI新的規定,因為在台灣或他國都有同樣的問題,例一家公司有五個部門,其中的一個部門通過認證就宣稱全公司通過認證,這也算是變相的借牌現象;導入特定的個案則是認證時皆必須現場提供二個專案來配合,但並不是提供較好的專案來供認證之用,理論上必須所有的專案皆地毯式、全面性去執行,並且從中隨機抽出評鑑。
   
   
資料的品質,至少搜集三年以上的資料,當中將資料分析並且剔除不好的資料,以維持資料的品質。主任評審委員會在評鑑過程中詢問資料的搜集過程、如何建立起PPB及PPM等,真正了解過程如何進行,一點一滴都要清清楚楚交代。
   
協同合作,目前我與中冠、鼎升、工研院及宏瞻等四家公司正撰寫關於台灣近年來CMMI高能力成熟度發展的研究報告,將在明年三月在美國呈現台灣在CMMI高能力成熟度的執行成效,特別要提出SEI很重視此研究報告,相信這將是全世界的突破,主要探討小公司如何進行高能力成熟度,如鼎升目前公司員工約40多人為何能導入CMMI ML4?而中冠員工雖比鼎升多,但在美國的角度看來也是小公司,同樣地為何也能導入CMMI ML4?此外,也證實了產、官、學及研究界之間共同合作努力的成果,所謂的學界代表─交通大學統計教授特別協助支持CMMI數據的指導與分析;研究界代表─工研院,一直從旁給予必要的協助;官方代表─包括經濟部工業局、中華軟協、台南軟協等單位,讓導入過程更加順利進行。彼此之間各司其職,相信此典範未來仍可持續依循,這也是SEI想了解的。


  













     流程績效模型的運用與益處,舉下列2個例子作進一步說明:


 1).


中冠:整個流程當中真正搜集資料、發現問題,如圖1有二條線,一是在需求、設計到開發階段產生了錯誤時即開始解決,另一則是台灣典型傳統產業,在專案完成前必定藉由整合、上線測試找出錯誤,很顯然地可看出若及早發現問題越多,到最後所會進行的整合、上線測試問題越少,這是中冠真正藉由資料所分析出來的模型,而好處則是可以了解解決錯誤所需的成本(如圖2),在需求階段花1元解決錯誤,同樣地相同的錯誤若在設計階段則要花費5倍的價錢才可解決,以此類推到最後整合測試、coding階段須花費20、50元,到正式上線則甚至要花費超過100元,同樣可以證明為何台灣重工率高。



                           圖一                                                    圖二


 2).


鼎升:藉由估算模式評估成本預算的信心指數,並以之為基準來跟客戶協商產品需求、規劃面,成本預算的信心指數太低、風險太大的專案寧可不接。



  
  建議:












    (1). 政府導入CMMI ACQ,目前已在台灣財稅中心全力投入,且已培訓一批CMMI專業講師團及流程改善小組,政府應充分利用此資產,藉由這批CMMI專業講師團去訓練其他單位,如國稅局、內政部等,讓導入單位直接訓練員工,不用間接透過顧問單位去進行,以此方式幫助導入單位帶來實質的成效。此外,


    (2). 台灣應培養一個優秀且具輔導能力的團隊,且各公司皆培訓一批屬於自家公司的能量,將高能力成熟度的能量紮實地建築在台灣,相信將是台灣產業升級一大起步。再來,


    (3). 建議政府將CMMI的能量轉向系統工程及CMMI ML3 Integrated Process and Product development (IPPD)方向前進。過去台灣的優勢在硬體工業、機械工業等等,而現今各國家之硬體發展之趨勢,已將提升其附加價值的軟體需求視為必備條件。若台灣以硬體的基礎之上附加軟體相信將是未來競爭優勢。


    (4). 最後建議台灣的團隊Established Special Interested Group (SIG)應瞭解矛盾論與實踐論,具備矛盾論及實踐論基本概念,藉由不同哲學觀點,找出改善的契機與落實的方法,進而走向國際。


 


    以上為本人對於CMMI 高能力成熟度的看法,在這與各位分享,謝謝。

(繼續閱讀...)
文章標籤

是 我 發表在 痞客邦 留言(0) 人氣(663)

  • 個人分類:電腦和網際網路
▲top
  • 10月 29 週四 200917:33
  • VB.net Code - Editor


 
一個偷懶資料編輯器 ,從資料庫抓出來後,可以在上面編資料,存檔;從Excel copy 資料貼到 DataGirdView
 
    Private Sub setDBSource()
        dbBuilder = New OleDbConnectionStringBuilder()
        dbBuilder("Provider") = "Microsoft.Jet.OLEDB.4.0"
        dbBuilder("Data Source") = dbStr
        dbCon = New OleDbConnection(dbBuilder.ConnectionString)
        dbCon.Open()
        For count As Integer = 0 To sqlStr.Count - 1
            command(count) = New OleDbCommand(sqlStr(count))  'sql statment
            command(count).Connection = dbCon
            adapter(count) = New OleDbDataAdapter(command(count))
            builder(count) = New System.Data.OleDb.OleDbCommandBuilder(adapter(count))
            dataTable(count) = New System.Data.DataTable()   'assign data
            adapter(count).Fill(dataTable(count))
            Dim source As BindingSource = New BindingSource() 'bridge
            source.DataSource = dataTable(count)
            viewer(count).DataSource = source
            controller(count).BindingSource = source
        Next
        dbCon.Close()
    End Sub
 
 Private Sub saveTabe()    
        Try           
            viewer(Me.TabControl1.SelectedIndex - 1).EndEdit()
            viewer(Me.TabControl1.SelectedIndex - 1).CurrentCell = Nothing
            adapter(Me.TabControl1.SelectedIndex - 1).Update(dataTable(Me.TabControl1.SelectedIndex - 1))
        Catch ex As Exception
            MessageBox.Show(ex.Message)
        End Try
 End Sub
 
   Private Sub PasteClipboard()  ' 阿肚仔寫的,忘了從那看來的
        Dim index As Integer = Me.TabControl1.SelectedIndex - 1
        Try
            Dim s As String = Clipboard.GetText()
            Dim lines As String() = s.Split(ControlChars.Lf)
            Dim iFail As Integer = 0, iRow As Integer = viewer(index).CurrentCell.RowIndex
            Dim iCol As Integer = viewer(index).CurrentCell.ColumnIndex
            Dim oCell As DataGridViewCell
            For Each line As String In lines
                If iRow < viewer(index).RowCount AndAlso line.Length > 0 Then
                    Dim sCells As String() = line.Split(ControlChars.Tab)
                    For i As Integer = 0 To sCells.GetLength(0) - 1
                        If iCol + i < Me.viewer(index).ColumnCount Then
                            oCell = viewer(index)(iCol + i, iRow)
                            If Not oCell.[ReadOnly] Then
                                If oCell.Value.ToString() <> sCells(i) Then
                                    oCell.Value = Convert.ChangeType(sCells(i), oCell.ValueType)
                                    oCell.Style.BackColor = Color.Tomato  '改過的區塊變色
                                Else
                                    iFail += 1
                                    'only traps a fail if the data has changed and you are pasting into a read only cell
                                End If
                            End If
                        Else
                            Exit For
                        End If
                    Next
                    iRow += 1
                Else
                    Exit For
                End If
                If iFail > 0 Then
                    MessageBox.Show(String.Format("{0} updates failed due to read only column setting", iFail))
                End If
            Next
        Catch generatedExceptionName As FormatException
            MessageBox.Show("The data you pasted is in the wrong format for the cell")
            Exit Sub
        End Try
    End Sub
 
    'key down event call  PasteClipboard
    Private Sub GradeDataGridView_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) _
        Handles GradeDataGridView.KeyDown, CoolingPatternDataGridView.KeyDown, ScriptPatternDataGridView.KeyDown, _
        StartProfileDataGridView.KeyDown, SegmentDataGridView.KeyDown, CzParaDataGridView.KeyDown, _
        CzSprayDataGridView.KeyDown, CzFaceDataGridView.KeyDown, MoldDataGridView.KeyDown, _
        RatioDataGridView.KeyDown, SprayDataDataGridView.KeyDown, StrandDataGridView.KeyDown
        If (e.Control AndAlso e.KeyCode = Keys.V) OrElse (e.Shift AndAlso e.KeyCode = Keys.Insert) Then
            PasteClipboard()
        End If
    End Sub
(繼續閱讀...)
文章標籤

是 我 發表在 痞客邦 留言(0) 人氣(122)

  • 個人分類:電腦和網際網路
▲top
  • 10月 21 週三 200922:52
  • 菜鳥工程師

最近在網路上,看到一位工程師寫的話:「在我是菜鳥工程師的時候,我只需要負責 學好 物件導向觀念及執行緒的控制 」,這句話我非常認同。
在學生的時候,好家在老師教的好 OO 的觀念,還不會太差;但是遇到 多執行緒的問題,在學生時代時,機會還真不多,確實沒有學好;
最近有個案子是在做模擬器,完整的程式結合起來運作的話,算是有三支獨立的 AP ,過程各自要處理 複雜計算,為了讓效能好一點,要控制 Multi-Thread 來分散式計算和即時產生圖表,加上 Window Form 有鐵的定律 UI Thread  ~~ 要加上其它的 Thread 來處理事情,手段麻煩,程式跑起來,有 lag 的現像,雙核心 CPU 都是滿檔,還真的有點搞死我 = = ,希望能順利寫好 ~~~
 
 以 C# 撰寫多執行緒 (Multi-threading) 相關學習資源整理 , 這位作者整理了好多的執行緒相關的文章。
 
 
(繼續閱讀...)
文章標籤

是 我 發表在 痞客邦 留言(0) 人氣(190)

  • 個人分類:電腦和網際網路
▲top
12...4»

自訂側欄

自訂側欄

個人資訊

是 我
暱稱:
是 我
分類:
美食情報
好友:
累積中
地區:

熱門文章

  • (7,401)RUP (Rational Unified Process)
  • (5,917)狐狸知道很多事情,但刺蝟只知道一件大事
  • (2,417)專案監控(Project Monitoring and Control, PMC)
  • (2,208)CMMI 需求管理(Requirements Management, REQM)
  • (1,722)CMMI - 專案規劃(Project Planning, PP)
  • (1,339)流程與產品品質保證(PPQA)
  • (649)CMMI 供應商協議管理(Supplier Agreement Management, SAM)
  • (231)VB.NET and C# Comparison
  • (8)Making love out nothing at all(讓愛一切成空)
  • (3)花蓮宜蘭-2

文章分類

  • 電影心得 (3)
  • 娛樂 (2)
  • 學生 (17)
  • 嗜好 (5)
  • 當兵 (19)
  • 圖書 (19)
  • 旅行 (16)
  • 電腦和網際網路 (35)
  • 飲食 (9)
  • 未分類文章 (1)

最新文章

  • 我要結婚了..
  • WINCE 下載檔案
  • 食神
  • 真是好用的 MSN 部落落
  • Window+GCC+CDT用Eclipse開發C or C++ -2
  • Window+GCC+CDT用Eclipse開發C or C++ - 1
  • 關鍵需求決定架構
  • 花蓮宜蘭-2
  • 中山大學
  • 宜蘭花蓮-1

最新留言

  • [20/10/29] olivermode 於文章「Window+GCC+CDT用Eclip...」留言:
    ◎步驟五.設定Make Targets。 Windows-...
  • [17/03/23] 學生 於文章「RUP (Rational Unifie...」留言:
    有幫助,推一下。...
  • [12/01/08] 曹語康 於文章「WINCE 下載檔案...」留言:
    欣賞你的文章是我的榮幸...
  • [10/09/01] 我 於文章「食神...」留言:
    = = 正統饅魚飯; only 白飯和 一片饅魚 19...
  • [10/08/31] Chao 於文章「食神...」留言:
    我是走精緻路線的…...
  • [10/08/31] Chao 於文章「食神...」留言:
    這是和俗稱的"牛肉湯麵"一樣嗎? 只見其名,不見其"肉"...
  • [10/08/26] 我 於文章「食神...」留言:
    大手町 的饅魚飯讓你吃到爽! = =...
  • [10/08/26] Chao 於文章「食神...」留言:
    …一句話…胖死你… 先把店掃一遍也好… 等我南下時…請拿出你...
  • [10/07/27] 我 於文章「食神...」留言:
    能吃是福呀! 明年的目標,把高雄明誠路上吃的店全掃一遍!...
  • [10/07/27] 我 於文章「Window+GCC+CDT用Eclip...」留言:
    = = 剪剪貼貼咩...

動態訂閱

文章精選

文章搜尋

誰來我家

參觀人氣

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