Time of Update: 2018-12-06
先來看下這個函數:BOOL FlashWindow( HWND hWnd, // handle to window to flash BOOL bInvert // flash
Time of Update: 2018-12-06
對下限非0的數組的建立和測試過程:using System;using NUnit.Framework;[TestFixture]public class App{ static void Main() { App app = new App(); app.Run(); } [Test] public void Run() { int[] lower = { 3, 5 }; // 一維起始下限為 3 ,二維起始下限為 5 . int[] length = { 2, 3 }; //
Time of Update: 2018-12-06
新裝了阿里WangWang,可是發現在資源管理員的右鍵裡面多了個"用阿里WangWang發送此檔案...",甚是惹人討厭,在註冊表裡面搜尋了一番也沒有什麼結果,無奈只能去問問Google了,結果得知有兩個辦法可以搞定: 一,直接反註冊即可: 點擊開始菜單,再點擊運行,輸入: (PS:我是把下面紅色的一組整個複製到運行裡的。然後就顯示一個什麼成功,就沒有了)regsvr32 -u "C:\Program Files\AliWangWang\AliIMExt.dll" 這個C:\Program
Time of Update: 2018-12-06
近來想用一下Xtreme ToolkitPro 介面庫,安裝後用VC6根據嚮導 產生一個工程,編譯時間出現上面的錯誤,解決辦法如下:工程->設定->c++選項卡,下面有個工程選項(O),在編輯框中參數最後面加上/Zm500即可.解決方案: 工程->設定->C/C++選項卡 下面有“工程選項”的一個命令區 在命令列的末尾加上 /Zm500 /Zm(指定先行編譯頭的記憶體配置限制)確定編譯器對先行編譯頭的記憶體配置限制。/Zmnumber參數
Time of Update: 2018-12-06
1.先來介紹它的第一條也是最重要的一條:隱藏 當我們同時編譯多個檔案時,所有未加static首碼的全域變數和函數都具有全域可見度。為理解這句話,我舉例來說明。我們要同時編譯兩個源檔案,一個是a.c,另一個是main.c.下面是a.c的內容: char a = 'A'; // global variable void msg() { printf("Hello\n"); }
Time of Update: 2018-12-06
一般我們是通過定義一個類的對象來訪問類的成員變數及函數的。這比較簡單,比如:CPage1 m_page1;然後就可以通過m_page1訪問CPage1類中的定義的函數 比如:m_page1.Add(2,3);但是如果需要再CPage1類中訪問主視窗類中的函數該怎麼辦?我們可以通過控制代碼來訪問。1.首先在Test.h(主程式標頭檔) 或StdAfx.h中定義也行extern HWND g_hWnd;2.在TestDlg.cpp中確保Test.h標頭檔被引用,並定義HWND
Time of Update: 2018-12-06
在C#中,我們使用關鍵字delegate來定義委託,如: public delegate void MyDelegate(object obj, int x);在進行編譯時間,以上的代碼將產生一個類定義: public class MyDelegate : System.MulticastDelegate { public MyDelegate(Object target, IntPtr methodPtr); public void virtual
Time of Update: 2018-12-06
關鍵字:Environment.TickCount 擷取系統啟動後經過的毫秒數。 如果系統連續運行,TickCount 將在約 24.9 天內從零遞增至 Int32.MaxValue, 然後跳至 Int32.MinValue(這是一個負數),再在接下來的 24.9 天內遞增至零。Thread.Sleep(n) 暫停線程n毫秒 問題:如果線程本身啟動不了的話,該方法將沒有任何作用.
Time of Update: 2018-12-06
一個應用程式定義域可以通過兩種方式和另一個應用程式定義域進行通訊。一種是傳值(by value),另一種是傳引用(by reference) 傳值是通過對象的序列和反序列實現的,因此要傳遞的對象必須有System.Serializable屬性. 它的實現原理:我們在應用程式定義域A中構造了一個對象A1,現在要將對象A1的引用傳遞給另 一個應用程式定義域B,CLR首先會將對象A1的欄位序列化到一個記憶體塊,然後再將這個記憶體塊的地址
Time of Update: 2018-12-06
using System;using System.Threading;public sealed class App { // Define an array with two AutoResetEvent WaitHandles. static WaitHandle[] waitHandles = new WaitHandle[] { new AutoResetEvent(false), new AutoResetEvent(false)
Time of Update: 2018-12-06
<!-- Start of StatCounter Code --><script type="text/javascript">var sc_project=4501156; var sc_invisible=0; var sc_partition=55; var sc_click_stat=1; var sc_security="398b77a0"; </script><script
Time of Update: 2018-12-06
材料構成主要用在加工生產方面。客戶的需求,自己瞭解的有兩種:①直接填寫加工品所需的材料。②因為有可能要把兩個零件a,b先加工成為c;然後把c和另外一個零件d一起加工成為A(直接所需的材料),所以表的關鍵字變為商材區分、品番、色番、部品~>標誌(追加欄位,比如以上用來記錄c材料的構成成份)。 --追加註釋:標誌的含義為區分加工品是由c和d加工出來的還是a,b,d加工出來的
Time of Update: 2018-12-06
SET NOCOUNT使返回的結果中不包含有關受 Transact-SQL 陳述式影響的行數的資訊。文法SET NOCOUNT { ON | OFF }注釋當 SET NOCOUNT 為 ON 時,不返回計數(表示受 Transact-SQL 陳述式影響的行數)。當 SET NOCOUNT 為 OFF 時,返回計數。即使當 SET NOCOUNT 為 ON 時,也更新 @@ROWCOUNT 函數。當 SET NOCOUNT 為 ON 時,將不給用戶端發送預存程序中的每個語句的
Time of Update: 2018-12-06
在使用Convert.ToBase64String()對字串進行Base64編碼時,注意的幾點: 例:string s = "Hello"; byte[] bytes = Convert.FromBase64String(s); 以上代碼在運行時會拋出FormatException異常.提示為:Base-64字元數組的無效長度原因:當Convert.FromBase64String方法的參數s的長度小於 4 或不是 4
Time of Update: 2018-12-06
當我們為某個員工設定許可權時,發現員工可以屬於很多個部門,於是這個員工擁有的許可權也將很多。這時,我們可以考慮用與運算來出來許可權的問題。假定有很多模組,每個模組允許設定使用許可權。模組X1使用許可權為許可權1,模組X2使用許可權為許可權4,假定統計得出一共存在10個許可權。那麼我們設定第一個許可權值為1,第二個許可權值為2,第三個許可權值為4,等等根據二進位的原理進行設定。如果使用者A擁有許可權1,許可權3,那麼他的許可權值為5.根據以上原理,模組1的許可權值為1,模組2的許可權值為8。那麼我
Time of Update: 2018-12-06
有很多種方法處理位元組到位元影像以及位元影像處理到位元組。但是不知道為什麼用位元影像轉成的位元組卻不能被方法Image.FromStream讀取,但可以被Bitmap.FromStream讀取。using System;using System.Collections.Generic;using System.Collections;using System.Text;using System.Drawing;using System.Drawing.Imaging;using System.I
Time of Update: 2018-12-06
目的: 能動地有效地處理繁忙的客戶段請求。做法: 開啟多個線程,使用分流形式處理客戶段的請求。 包括建立自己的線程池和使用系統提供的線程池。例子:建立自己的線程池 using System.Threading;class MyThreadPool{ ReusableThread[] m_ThreadPool; public MyThreadPool(int pSize) { m_ThreadPool =
Time of Update: 2018-12-06
目的: 把需要很長時間處理的事件交付子線程去處理,自己繼續往下做該做的事情。 方法: 使用事件或者委託。來反饋子線程是否已完成。public delegate void Callback();public class WaitCall{ private Callback vFinished;//指定一個委派物件。 public void DoLongTask(Callback pCallback) { vFinished =
Time of Update: 2018-12-06
1,可以通過對儲存格逐個寫入---------方便,但是速度慢2,利用Excel特性,先把每列資料用\t隔開,每行用\r\n隔開,最後用剪貼簿粘貼上去----------速度稍微提高了一些,但是如果外部進行拷貝粘貼任務的話,容易發生錯誤。3,通過數組,直接往數組對應的地區內賦值。----------對於DataTable很方便,直接Rows[index].ArrayItem就可以賦值,速度一般4,通過Excel.OpenText()的方法,往Excel裡賦值。其中Text的內容通過檔案流的方法寫
Time of Update: 2018-12-06
在資料的更新時,更新日的處理很重要。現在自己的方式為只要有header表和detail表,不管從更新處理還是入力畫面更新,都應該一起更新。①公用的只能更新的殘高表用更新前殘高表的更新日進行更新。如果之前有殘高表的資料被取出進行計算,那麼更新時要取更新點的資料進行核對。②記錄檔都是登入不用考慮。③更新其他入力畫面對應的主表A時,用A表的元更新日進行更新。如果涉及到資料讀取計算,更新點要核對或者重新計算。