共用方式為


IOCTL_GNSS_START_FIXSESSION IOCTL (gnssdriver.h)

GNSS 配接器會使用 IOCTL_GNSS_START_FIXSESSION 控制項程式代碼來啟動修正工作階段。

主要程序代碼

IRP_MJ_DEVICE_CONTROL

輸入緩衝區

GNSS_FIXSESSION_PARAM 結構的指標。

輸入緩衝區長度

設定為sizeof(GNSS_FIXSESSION_PARAM)。

輸出緩衝區

設定為 NULL。

輸出緩衝區長度

設定為 0。

狀態區塊

如果要求成功,Irp->IoStatus.Status 會設定為STATUS_SUCCESS。 否則,狀態 為適當的錯誤條件,作為 NTSTATUS 程序代碼。

言論

驅動程式會設定NTSTATUS值,以指出下列其中一個結果。

  • 修正工作階段已成功啟動。
  • 相同類型的修正會話已經作用中,且驅動程式不支援多個會話。

GNSS 配接器注意事項

如果不存在多會話支援,GNSS 配接器可確保相同修正類型的多個會話已正確多任務處理,讓 GNSS 驅動程式只會看到指定型別修正的一個會話。 GNSS 配接器可以透過 IOCTL_GNSS_MODIFY_FIXSESSION 呼叫修改作用中修正會話的修正會話參數。

除非驅動程式完成此呼叫並傳回輸出中的成功狀態,否則 GNSS 配接器不會啟動取得修正要求。

GNSS 驅動程式注意事項

如果不存在多會話支援,且 GNSS 配接器會針對已經作用中的修正類型傳送另一個啟動修正要求,則 GNSS 驅動程式必須失敗新的工作階段要求。 驅動程式不應該以新的修正會話詳細數據取代前一個會話。

GNSS 驅動程式一律支援不同修正類型的多個修正會話。

一旦 GNSS 驅動程式接受修正工作階段參數、驗證它們,並啟動 GNSS 引擎,它就會立即完成 I/O 並成功傳回碼。 除非啟動修正會話傳回成功碼,否則 GNSS 配接器將不會發出取得修正要求。 針對具有相同會話標識碼的 GNSS 配接器,必須針對後續擱置中取得修正呼叫,將此特定修正會話收到的所有修正程式傳送至 GNSS 配接器。 如果修正程式可供使用,而且適配卡不會建立擱置的取得修正呼叫,則 GNSS 驅動程式必須將修正排入佇列,直到建立代表會話標識碼的暫止 I/O 為止。

一旦啟動修正會話,除非 GNSS 配接器明確停止修正會話,否則它會保持作用中。 這適用於所有修正類型。

要求

要求 價值
標頭 gnssdriver.h

另請參閱

在驅動程式 中建立IOCTL要求

WdfIoTargetSendInternalIoctlOthersSynchronously

WdfIoTargetSendInternalIoctlSynchronously

WdfIoTargetSendIoctlSynchronously