在LabVIEW中, 我要如何用程式去設定系統時間?



主要軟體:
主要軟體版本: N/A
主要軟體修正版本: N/A
次要軟體: N/A

問題:
在LabVIEW中, 我打算從儀器中讀取GPS時間, 或者由於某些原因我需要很準確地去設定系統時間. 我有注意到Get Time/Date的VI, 但確沒有找到任何Set的VI. 我該如何做到這件事情?

解答:
LabVIEW中沒有內建的設定系統時間的VI. 然而, 這件事能用Windows SDK來達成. 下面是使用"Call Library Function Node.vi"來呼叫kernel32.dll的"SetSystemTime"函式的步驟:
  1. 在程式方塊圖上放一個"Call Library Function Node". 雙擊它以開啟"Call Library Function"設定視窗.
  2. 點擊"Browse"並選取kernel32.dll (通常可以在C:\WINDOWS\system32\kernel32.dll找到).
  3. 在"Function Name"下拉式選單選擇"SetSystemTime".
  4. 在"Calling Conventions"下拉式選單選擇"stdcall (WINAPI)".
  5. "return type"選"Numeric"並選"Signed 8-bit Integer".
  6. 點擊"Add a Parameter After", "Type"選"Adapt to Type", "Data Format"選"Pointers to Handles".
  7. 點擊"OK" 以確認您"Call Library Function Node"的設定.
  8. 此函式接受一組8個WORD(16-bit integer)的參數. 在LabVIEW中, 做個包含8個WORD的cluster. 這8個WORD表示 Year, Month, Day of Week, Day of Month, Hour, Minute, Second, 及Millisecond. 把此cluster連到"Call Library Function Node"的"param 1"的輸入參數.
  9. 輸入想要的時間值並執行此程式, 即可設定時間.

請參考msdn.com上SetSystemTime的文件 (連結在下面) 以取得關於此函數的更多資訊. 注意kernel32.dll中也有GetSystemTime函式.


相關連結:
Microsoft Platform SDK: SetSystemTime
Product Reference: Using External Code in LabVIEW
Developer Zone Tutorial: An Overview of Accessing DLLs or Shared Libraries from LabVIEW

附加檔案:





報告日期: 02/06/2004
最後更新: 01/04/2008
文件偏號: 365AR7FQ