Tài liệu Steamworks
Interface ISteamUtils
Interface cung cấp truy cập tới hàng loạt chức năng phụ khác.

Hàm con

Hàm con (member function) cho ISteamUtils được gọi qua hàm accessor dạng global SteamUtils().

BOverlayNeedsPresent

bool BOverlayNeedsPresent();
Kiểm tra xem lớp phủ có cần hiện diện. Chỉ yêu cầu nếu dùng các cập nhật dựng theo event.

Thông thường lệnh gọi này không cần thiết nếu trò chơi của bạn có vòng lặp khung hình liên tục chạy để gọi API D3D Present, hay gọi API OGL SwapBuffers cho mỗi khung hình, như trong hầu hết mọi trò chơi. Tuy nhiên, nếu bạn có một trò chơi chỉ làm mới màn hình dựa theo event thì việc này có thể làm hư lớp phủ, do nó dùng lệnh gọi Present/SwapBuffers của bạn để điều khiển quy trình nội bộ lặp khung hình của nó và cũng có thể cần Present() lên màn hình bất kỳ khi nào một thông báo xảy ra, hay khi lớp phủ được đem lên bên trên trò chơi bởi người dùng. Bạn có thể dùng API này để hỏi lớp phủ xem nó có cần hiện diện trong trường hợp đó, rồi định kỳ kiểm tra việc này (khoảng 33hz là phù hợp) và đảm bảo rằng bạn làm mới màn hình với Present hay SwapBuffers để cho phép lớp phủ thực hiện nghĩa vụ.

Trả về: bool
true nếu lớp phủ cần bạn làm mới màn hình, còn không thì false.

CheckFileSignature

SteamAPICall_t CheckFileSignature( const char *szFileName );
TênLoạiMô tả
szFileNameconst char *.

Không còn dùng.

Trả về: SteamAPICall_t để dùng với kết quả gọi của CheckFileSignature_t.

GetAPICallFailureReason

ESteamAPICallFailure GetAPICallFailureReason( SteamAPICall_t hSteamAPICall );
TênLoạiMô tả
hSteamAPICallSteamAPICall_tHandle cho lệnh gọi API Steam để kiểm tra việc không thành công.

Dùng để lấy nguyên nhân thất bại của một kết quả gọi.

Mục đích sử dụng chính của hàm này là gỡ lỗi. Các nguyên do thất bại thông thường nằm ngoài tầm kiểm soát của bạn và thường không quá quan trọng. Tiếp tục thử gọi lại API cho đến khi nó hoạt động.

Trả về: ESteamAPICallFailure
[type]ESteamAPICallFailure[/type]

Xem thêm: IsAPICallCompleted, GetAPICallResult

Ví dụ:
void CHTMLSurface::OnBrowserReady( HTML_BrowserReady_t *pBrowserReady, bool bIOFailure ) { if ( bIOFailure ) { SteamUtils()->GetAPICallFailureReason( handle ); // handle phải được trữ riêng. return; } }

GetAPICallResult

bool GetAPICallResult( SteamAPICall_t hSteamAPICall, void *pCallback, int cubCallback, int iCallbackExpected, bool *pbFailed );
TênLoạiMô tả
hSteamAPICallSteamAPICall_tHandle cho lệnh gọi API.
pCallbackvoid *Trả về các callback vào các vị trí bộ nhớ định sẵn đã được cung cấp.
cubCallbackintKích cỡ của pCallback mà bạn đang đưa qua.
iCallbackExpectedintSố k_iCallback liên quan đến callback.
pbFailedbool *Trả về nếu gọi API không thành công.

Lấy nội dung của một lệnh gọi API hoàn tất. Được cung cấp cho backend của wrapper CallResult.

Thông thường không được khuyến nghị nếu bạn dùng nó một cách thủ công.

Trả về: bool
true khi thành công nếu gọi API hợp lệ và đã hoàn thành, còn không false.

Nếu lệnh gọi thành công, nó chép callback vào trong pCallback và trả các thất bại về pbFailed.

Xem thêm: IsAPICallCompleted, GetAPICallFailureReason

GetAppID

uint32 GetAppID();
Lấy App ID của process hiện tại.

Trả về: uint32
Trả về AppID.

GetConnectedUniverse

EUniverse GetConnectedUniverse();
Lấy universe mà client hiện tại đang kết nối tới. (Chỉ sử dụng bởi Valve).

Trả về: EUniverse
[type]EUniverse[/type]

GetCSERIPPort

bool GetCSERIPPort( uint32 *unIP, uint16 *usPort );
TênLoạiMô tả
unIPuint32 *Trả về IP mà client đang kết nối tới.
usPortuint16 *Trả về port mà client đang kết nối tới.

Lấy IP của máy chủ báo cáo cho Valve - hiện chỉ sử dụng trong các trò chơi dùng engine Source

Trả về: bool
Trả về true nếu người dùng hiện đang kết nối; nếu không thì false.

GetCurrentBatteryPower

uint8 GetCurrentBatteryPower();
Lấy lượng pin hiện tại của máy tính.

Trả về: uint8
Lượng pin hiện tại từ [0..100]%. Trả về 255 khi người dùng đang dùng điện xoay chiều.

GetEnteredGamepadTextInput

bool GetEnteredGamepadTextInput( char *pchText, uint32 cchText );
TênLoạiMô tả
pchTextchar *Một bộ nhớ đệm được cung cấp trước để chép chuỗi văn bản nhập liệu vào.
cchTextuint32Kích cỡ của bộ nhớ đệm pchText.

Lấy văn bản nhập vào bởi tay cầm từ lớp phủ Big Picture.

Phải được gọi bên trong callback GamepadTextInputDismissed_t, và chỉ khi GamepadTextInputDismissed_t.m_bSubmitted là true.

Cho nhập liệu văn bản dưới dạng UTF-8.

Trả về: bool
true nếu có văn bản để nhận và cchText cùng kích cỡ với GamepadTextInputDismissed_t.m_unSubmittedText; còn không, false.

Xem thêm: ShowGamepadTextInput, GetEnteredGamepadTextLength

Ví dụ:
void OnGamepadTextInputDismissed_t( GamepadTextInputDismissed_t* pCallback ) { // Người dùng hủy, if ( !pCallback.m_bSubmitted ) return; // Dùng một số độ dài nhập liệu tối đa mà chúng ta đã đưa vào trong ShowGamepadTextInput, +1 cho null terminator. const uint32 MAX_INPUT_LENGTH = 64 + 1; uint32 length = SteamUtils()->GetEnteredGamepadTextLength(); char* szTextInput[MAX_INPUT_LENGTH]; bool success = SteamUtils()->GetEnteredGamepadTextInput( szTextInput, length ); if ( !success ) { // Ghi nhận một lỗi. Điều này chỉ nên xảy ra nếu độ dài là > MaxInputLength return; } // Hiện string được cập nhật }

GetEnteredGamepadTextLength

uint32 GetEnteredGamepadTextLength();
Lấy độ dài văn bản nhập vào bởi tay cầm từ lớp phủ Big Picture.

Phải được gọi bên trong callback GamepadTextInputDismissed_t, và chỉ khi GamepadTextInputDismissed_t.m_bSubmitted là true.

Trả về: uint32


Xem thêm: ShowGamepadTextInput, GetEnteredGamepadTextInput

Ví dụ:
void OnGamepadTextInputDismissed_t( GamepadTextInputDismissed_t* pCallback ) { // Người dùng hủy, if ( !pCallback.m_bSubmitted ) return; // Dùng một số độ dài nhập liệu tối đa mà chúng ta đã đưa vào trong ShowGamepadTextInput, +1 cho null terminator. const uint32 MAX_INPUT_LENGTH = 64 + 1; uint32 length = SteamUtils()->GetEnteredGamepadTextLength(); const char* szTextInput[MAX_INPUT_LENGTH]; bool success = SteamUtils()->GetEnteredGamepadTextInput( szTextInput, length ); if ( !success ) { // Ghi nhận một lỗi. Điều này chỉ nên xảy ra nếu độ dài là > MaxInputLength return; } // Hiện string được cập nhật }

GetImageRGBA

bool GetImageRGBA( int iImage, uint8 *pubDest, int nDestBufferSize );
TênLoạiMô tả
iImageintHandle cho ảnh sẽ được lấy.
pubDestuint8 *Bộ nhớ đệm sẽ được điền vào.
nDestBufferSizeintTổng kích cỡ của bộ nhớ đệm pubDest.

Lấy số byte của ảnh từ handle của ảnh.

Trước khi gọi lệnh này, bạn phải lấy kích cỡ của ảnh bằng cách gọi GetImageSize để bạn có thể tạo bộ nhớ đệm với kích thước phù hợp. Sau đó, bạn có thể phân bổ bộ nhớ đệm với chiều rộng và chiều cao như sau: rộng * cao * 4. Ảnh được cung cấp dưới định dạng RGBA. Lệnh gọi này có thể tốn kém tài nguyên do nó chuyển từ định dạng nén (JPG, PNG, TGA) và không cung cấp bộ nhớ tạm nội bộ cho bộ nhớ đệm được trả về, vì thế cật lực khuyến nghị chỉ gọi một lần với mỗi handle ảnh và bộ nhớ tạm kết quả. Hàm này chỉ được dùng cho ảnh đại diện Steam và ảnh thành tựu, chúng không được kỳ vọng sẽ thay đổi giữa trò chơi.

Trả về: bool
true khi thành công nếu handle ảnh hợp lệ và bộ nhớ đệm được điền, còn không false.

Xem thêm: ISteamFriends::GetSmallFriendAvatar, ISteamFriends::GetMediumFriendAvatar, ISteamFriends::GetLargeFriendAvatar, ISteamUserStats::GetAchievementIcon

Ví dụ:
HGAMETEXTURE GetSteamImageAsTexture( int iImage ) { HGAMETEXTURE hTexture = 0; // Bạn nên kiểm tra xem mình đã cache hình ảnh này chưa bằng cách dùng dictionary/map // với key là iImage rồi trả về texture handle đi kèm nếu tồn tại. // Nếu nó không tồn tại, hãy tiếp tục và thêm texture vào map trước khi trả về ở cuối hàm. // Nếu cần kiểm tra kích cỡ của hình ảnh. uint32 uAvatarWidth, uAvatarHeight; bool success = SteamUtils()->GetImageSize( iImage, &uAvatarWidth, &uAvatarHeight ); if ( !success ) { // Ghi cảnh báo. return hTexture; } // Lấy dữ liệu raw RGBA thực tế từ Steam rồi chuyển đổi thành texture trong engine trò chơi const int uImageSizeInBytes = uAvatarWidth * uAvatarHeight * 4; uint8 *pAvatarRGBA = new uint8[uImageSizeInBytes]; success = SteamUtils()->GetImageRGBA( iImage, pAvatarRGBA, uImageSizeInBytes ); if( !success ) { // Làm gì đó để chuyển đổi texture RGBA thành định dạng texture nội bộ của bạn để hiển thị. // hTexture = m_pGameEngine->HCreateTexture( pAvatarRGBA, uAvatarWidth, uAvatarHeight ); // Rồi thêm texture vào cache } // Đừng quên giải phóng bộ nhớ! delete[] pAvatarRGBA; return hTexture; }

GetImageSize

bool GetImageSize( int iImage, uint32 *pnWidth, uint32 *pnHeight );
TênLoạiMô tả
iImageintHandle của ảnh cần lấy kích cỡ.
pnWidthuint32 *Trả về chiều rộng của ảnh.
pnHeightuint32 *Trả về chiều cao của ảnh.

Lấy kích cỡ handle của một ảnh Steam.

Phải được gọi trước khi gọi GetImageRGBA nhằm tạo một bộ nhớ đệm có kích cỡ phù hợp để đưa vào dữ liệu raw của ảnh.

Trả về: bool
true khi thành công nếu handle ảnh hợp lệ và kích cỡ được điền, còn không false.

Xem thêm: ISteamFriends::GetSmallFriendAvatar, ISteamFriends::GetMediumFriendAvatar, ISteamFriends::GetLargeFriendAvatar, ISteamUserStats::GetAchievementIcon

GetIPCCallCount

uint32 GetIPCCallCount();
Trả về số lần gọi IPC được thực hiện kể từ lần cuối hàm này được gọi.

Được dùng để gỡ lỗi hiệu suất, để bạn có thể quyết định số lần gọi IPC (Inter-Process Communication) trò chơi của bạn thực hiện mỗi khung hình
Mỗi lần gọi IPC là tối thiểu một lần chuyển ngữ cảnh luồng nếu không phải là một process, vậy nên bạn sẽ muốn kiểm soát tần suất thực hiện chúng.

Trả về: uint32

GetIPCountry

const char * GetIPCountry();
Trả về mã quốc gia 2 số định dạng ISO 3166-1-alpha-2 mà client đang chạy.
ví dụ "US" hoặc "UK".

Dữ liệu này được tra qua cơ sở dữ liệu IP thành địa điểm.

Trả về: const char *

GetSecondsSinceAppActive

uint32 GetSecondsSinceAppActive();
Trả về số giây kể từ khi ứng dụng hoạt động.

Trả về: uint32

GetSecondsSinceComputerActive

uint32 GetSecondsSinceComputerActive();
Trả về số giây kể từ lần cuối người dùng di chuyển chuột.

Trả về: uint32

GetServerRealTime

uint32 GetServerRealTime();
Trả về giá trị thời gian máy chủ Steam theo định dạng giờ Unix. (Số lượng giây kể từ 1/1/1970 giờ UTC)

Trả về: uint32

GetSteamUILanguage

const char * GetSteamUILanguage();
Trả về ngôn ngữ phần mềm Steam đang chạy.

Thay vào đó bạn có thể muốn ISteamApps::GetCurrentGameLanguage, chỉ dùng trong những trường hợp rất đặc biệt.

Để biết danh sách toàn bộ các ngôn ngữ xem các ngôn ngữ được hỗ trợ.

Trả về: const char *


Xem thêm: ISteamApps::GetCurrentGameLanguage, ISteamApps::GetAvailableGameLanguages

IsAPICallCompleted

bool IsAPICallCompleted( SteamAPICall_t hSteamAPICall, bool *pbFailed );
TênLoạiMô tả
hSteamAPICallSteamAPICall_tHandle cho lệnh gọi API để kiểm tra.
pbFailedbool *Trả về nếu lệnh gọi API không thành công hay không (true) nếu có, ngoài ra (false).

Kiểm tra nếu lệnh gọi API đã hoàn thành. Được cung cấp cho backend của wrapper CallResult.

Thông thường không được khuyến nghị nếu bạn tự dùng nó.

Trả về: bool
true nếu gọi API hợp lệ và đã hoàn thành, còn không false.

Xem thêm: GetAPICallResult, GetAPICallFailureReason

IsOverlayEnabled

bool IsOverlayEnabled();
Kiểm tra nếu lớp phủ Steam đang hoạt động & người dùng có thể truy cập hay không.

Quá trình lớp phủ sẽ mất vài giây để khởi động & hook vào process trò chơi, vì thế tính năng này ban đầu sẽ trả về false trong khi nạp lớp phủ.

Trả về: bool

IsSteamChinaLauncher

bool IsSteamChinaLauncher();
Trả về nếu phần mềm khởi động là một phần mềm khởi động Steam China. Bạn có thể khiến phần mềm hoạt động như phần mềm khởi động Steam China bằng cách thêm -dev -steamchina vào dòng lệnh khi khởi động Steam.

InitFilterText

bool InitFilterText();
Khởi chạy việc lọc văn bản, nạp các từ điển cho ngôn ngữ mà trò chơi đang chạy.

Người dùng có thể tùy biến hành vi lọc chữ trong Tùy chỉnh tải khoản Steam

Trả về: bool
true nếu khởi chạy thành công, false nếu bộ lọc không có cho ngôn ngữ của trò chơi, trong trường hợp đó FilterText() sẽ đóng vai trò passthrough.

Xem thêm: FilterText

FilterText

int FilterText( ETextFilteringContext eContext, CSteamID sourceSteamID, const char *pchInputMessage, char *pchOutFilteredText, uint32 nByteSizeOutFilteredText );
TênLoạiMô tả
eContextETextFilteringContextloại nội dung trong string nhập
sourceSteamIDCSteamIDSteam ID làm nguồn gốc của string đã nhập vào (vd: người chơi với tên, hoặc ai nói dòng đó)
pchInputTextconst char*string nhập vào nên được lọc, nó có thể dưới dạng ASCII hoặc UTF-8
pchOutFilteredTextchar*nơi mà đầu xuất sẽ được đặt, cho dù không thực hiện quá trình lọc
nByteSizeOutFilteredText uint32kích cỡ (theo byte) của pchOutFilteredText, ít nhất bằng strlen(pchInputText)+1
Lọc tin nhắn đã nhập vào và đặt kết quả sau khi lọc ra pchOutFilteredText. Với các bộ lọc cần thiết vì pháp lý, quá trình lọc sẽ luôn luôn áp dụng. Có thể có các quá trình lọc khác, dựa trên ngữ cảnh và thiết lập người dùng.

Trả về: int
Trả về số lượng ký tự (không phải byte) đã lọc.

Xem thêm: InitFilterText

IsSteamInBigPictureMode

bool IsSteamInBigPictureMode();
Kiểm tra xem Steam & lớp phủ Steam có đang hoạt động trong chế độ Big Picture.

Trò chơi bắt buộc phải khởi động qua phần mềm Steam để bật lớp phủ Big Picture.
Trong quá trình phát triển, trò chơi được thêm vào thư viện nhà phát triển dưới dạng trò chơi ngoài Steam để thử tính năng này.

Trả về: bool
true nếu có thể sử dụng lớp phủ Big Picture; còn không thì false.
Giá trị sẽ luôn trả về false nếu ứng dụng không thuộc loại ứng dụng 'trò chơi'.

IsSteamRunningInVR

bool IsSteamRunningInVR();
Kiểm tra Steam có hoạt động ở chế độ VR không.

Trả về: bool
true nếu Steam đang hoạt động ở chế độ VR; còn không, trả về false.

IsVRHeadsetStreamingEnabled

bool IsVRHeadsetStreamingEnabled();
Kiểm tra nếu góc nhìn mũ chụp đang được phát qua Steam Remote Play.

Trả về: bool
true nếu VR được bật và góc nhìn mũ chụp đang được phát sóng; còn không, trả về false.

Xem thêm: SetVRHeadsetStreamingEnabled

IsSteamRunningOnSteamDeck

bool IsSteamRunningOnSteamDeck();
Kiểm tra Steam có đang chạy trên Steam Deck hay không.

Trả về: bool
true nếu Steam đang chạy trong thiết bị Steam Deck; còn không, trả về false.

SetOverlayNotificationInset

void SetOverlayNotificationInset( int nHorizontalInset, int nVerticalInset );
TênLoạiMô tả
nHorizontalInsetintGiá trị khoảng cách bề ngang (trái-phải) theo đơn vị pixel kể từ góc.
nVerticalInsetintGiá trị khoảng cách bề dọc (trên-xuống) theo đơn vị pixel kể từ góc.

Đặt nơi lồng thông báo lớp phủ từ vị trí góc như chỉ định bởi SetOverlayNotificationPosition.

Giá trị (0, 0) đặt lại vị trí về góc.

Vị trí sẽ theo từng trò chơi và đặt lại cho mỗi lần khởi chạy.

SetOverlayNotificationPosition

void SetOverlayNotificationPosition( ENotificationPosition eNotificationPosition );
TênLoạiMô tả
eNotificationPositionENotificationPosition

Đặt góc mà các thông báo tin nhắn của lớp phủ Steam sẽ hiện ra.

Bạn cũng có thể đặt khoảng cách từ một góc chỉ định bằng cách sử dụng SetOverlayNotificationInset.

Vị trí là theo từng trò chơi và đặt lại với mỗi lần khởi chạy.

SetVRHeadsetStreamingEnabled

void SetVRHeadsetStreamingEnabled( bool bEnabled );
TênLoạiMô tả
bEnabledboolĐặt chế độ phát sóng mũ chụp VR sang bật (true) hoặc tắt (false).

Đặt để nội dung mũ chụp sẽ phát sóng qua Steam Remote Play hay không.

Nếu bật, cảnh trong mũ chụp sẽ được phát sóng, và tín hiệu nhập từ xa sẽ không được phép. Còn không nếu tính năng này tắt, thì thay vào đó sẽ phát sóng cửa sổ ứng dụng, và cho phép tín hiệu nhập từ xa. Trò chơi VR mặc định ở giá trị bật trừ khi appinfo mở rộng của trò chơi đó có "VRHeadsetStreaming" "0".

Điều này hữu dụng với các trò chơi có yếu tố nhiều người chơi bất đối xứng.

Xem thêm: IsVRHeadsetStreamingEnabled

SetWarningMessageHook

void SetWarningMessageHook( SteamAPIWarningMessageHook_t pFunction );
TênLoạiMô tả
pFunctionSteamAPIWarningMessageHook_tCon trỏ hàm tới hàm callback.

Đặt một hook thông báo cảnh báo để nhận tin nhắn thông tin và cảnh báo SteamAPI trong các hàm callback.

Hàm nguyên mẫu này phải khớp định nghĩa trong SteamAPIWarningMessageHook_t. Bao gồm cả các liên kết extern "C" và quy ước gọi __cdecl.

'int nSeverity' là mức độ nghiêm trọng; 0 cho thông điệp, 1 cho cảnh báo. Nếu bạn đang chạy quá trình gỡ lỗi thì chỉ có cảnh báo được gửi đi. Nếu bạn thêm -debug_steamapi vào dòng lệnh thì thông điệp tin tức cũng sẽ được gửi đi.
'const char * pchDebugText' là văn bản của thông điệp.
Các callback sẽ xảy ra trực tiếp sau khi hàm API được gọi đã tạo ra cảnh báo hay tin nhắn

Truyền NULL sẽ bỏ hook.

Ví dụ:
extern "C" void __cdecl SteamAPIDebugTextHook( int nSeverity, const char *pchDebugText ) { ::OutputDebugString( pchDebugText ); if ( nSeverity >= 1 ) { // địa điểm để đặt breakpoint bắt các lỗi API int x = 3; x = x; } } void EnableWarningMessageHook() { SteamUtils()->SetWarningMessageHook( &SteamAPIDebugTextHook ); }

ShowGamepadTextInput

bool ShowGamepadTextInput( EGamepadTextInputMode eInputMode, EGamepadTextInputLineMode eLineInputMode, const char *pchDescription, uint32 unCharMax, const char *pchExistingText );
TênLoạiMô tả
eInputModeEGamepadTextInputModeChọn chế độ nhập để dùng, loại Normal hoặc Password (ẩn chữ)
eLineInputModeEGamepadTextInputLineModeKiểm soát dùng nhập dữ liệu một hay nhiều hàng.
pchDescriptionconst char *Đặt chú thích để báo người dùng hộp thoại nhập dùng cho điều gì.
unCharMaxuint32Số lượng ký tự tối đa người dùng có thể nhập.
pchExistingTextconst char *Đặt các đoạn văn bản có sẵn mà người dùng có thể chỉnh sửa.

Bật hộp thoại nhập ký tự của Big Picture, chỉ hỗ trợ tín hiệu nhập từ tay cầm.

Trả về: bool
true nếu lớp phủ Big Picture đang chạy; còn không, trả về false.

Xem thêm: GetEnteredGamepadTextLength, GetEnteredGamepadTextInput

ShowFloatingGamepadTextInput

bool ShowFloatingGamepadTextInput( EFloatingGamepadTextInputMode eKeyboardMode, int nTextFieldXPosition, int nTextFieldYPosition, int nTextFieldWidth, int nTextFieldHeight );
TênLoạiMô tả
eKeyboardModeEFloatingGamepadTextInputModeChọn loại bàn phím để sử dụng
nTextFieldXPositionintTọa độ X của trường văn bản, không nên bị che phủ bởi bàn phím nổi
nTextFieldYPositionintTọa độ Y của trường văn bản, không nên bị che phủ bởi bàn phím nổi
nTextFieldWidthintchiều rộng của trường văn bản, không nên bị che phủ bởi bàn phím nổi
nTextFieldHeight intđộ cao của trường văn bản, không nên bị che phủ bởi bàn phím nổi

Mở một bàn phím nổi lên trên nội dung trò chơi và gửi các phím hệ điều hành trực tiếp tới trò chơi.
Vị trí đặt khung văn bản sẽ được chỉ định với pixel tương quan tới vị trí gốc của cửa sổ trò chơi và sẽ được dùng để làm vị trí đặt bàn phím nổi mà không che phần khung chữ.

Trả về: bool
true nếu bàn phím nổi đang hiện lên, còn không, trả về false.

Xem thêm: FloatingGamepadTextInputDismissed_t

StartVRDashboard

void StartVRDashboard();
Hỏi Steam để tạo và dựng trang tổng quan OpenVR.

SetGameLauncherMode

void SetGameLauncherMode( bool bLauncherMode);
TênLoạiMô tả
bLauncherModeboolPhần mềm khởi động có thể đang chạy hay không
Với các phần mềm khởi động trò chơi không hỗ trợ tay cầm, bạn có thể dùng lệnh này để Steam Input chuyển hóa tương tác tay cầm thành chuột/bàn phím để điều hướng bộ khởi động

Callback

Đây là các callback có thể kích hoạt bằng cách gọi SteamAPI_RunCallbacks. Rất nhiều trong số này sẽ được kích hoạt trực tiếp để phản hồi lại hàm con của ISteamUtils.

CheckFileSignature_t

Kết quả call cho CheckFileSignature.

TênLoạiMô tả
m_eCheckFileSignatureECheckFileSignatureBao gồm kết quả của quá trình kiểm tra chữ ký file.
k_ECheckFileSignatureNoSignaturesFoundForThisApp - Ứng dụng này chưa có thiết lập ở mục Ký trên trang đối tác để bật tính năng này.
k_ECheckFileSignatureNoSignaturesFoundForThisFile - File này không được liệt kê trên mục Ký của trang đối tác.
k_ECheckFileSignatureFileNotFound - File không có tồn tại trên đĩa.
k_ECheckFileSignatureInvalidSignature - File có tồn tại, và mục Ký đã được đặt cho file, nhưng file chưa được ký hoặc chữ ký không khớp.
k_ECheckFileSignatureValidSignature - File đã được ký và chữ ký hợp lệ.

Hàm liên quan: CheckFileSignature

GamepadTextInputDismissed_t

Gọi khi đã đóng hộp thoại nhập văn bản từ tay cầm của Big Picture.

TênLoạiMô tả
m_bSubmittedbooltrue nếu người dùng nhập & chấp nhận văn bản (gọi GetEnteredGamepadTextInput để nhận văn bản), false nếu việc nhập bị hủy.
m_unSubmittedTextuint32Bao gồm độ dài theo byte nếu có nhập văn bản.

FloatingGamepadTextInputDismissed_t

Gọi khi bàn phím nổi được gọi từ ShowFloatingGamepadTextInput đã đóng.

IPCountry_t

Gọi khi quốc gia của người dùng thay đổi. Quốc gia sau đó nên được cập nhật với GetIPCountry.

Callback này không có trường nào.

LowBatteryPower_t

Gọi khi đang chạy trên laptop và còn ít hơn 10 phút sử dụng pin, và sau đó sẽ báo mỗi phút tiếp theo.

TênLoạiMô tả
m_nMinutesBatteryLeftuint8Thời lượng pin ước tính còn lại có thể sử dụng, theo phút.

SteamAPICallCompleted_t

Gọi khi SteamAPICall_t đã hoàn thành (hoặc không thành công)

TênLoạiMô tả
m_hAsyncCallSteamAPICall_tHandle của hàm call API Steam đã thành công.
m_iCallbackintĐây là hằng số k_iCallback để nhận dạng độc nhất các callback đã hoàn thành.
m_cubParamuint32Kích cỡ theo byte của callback đã hoàn thành.

AppResumingFromSuspend_t

Gửi sau khi thiết bị trở về từ trạng thái ngủ/hoãn (sleep/suspend).

Callback này không có trường nào.

SteamShutdown_t

Được gọi khi Steam muốn tắt.

Callback này không có trường nào.

Enum

Đây là các enum được định nghĩa để dùng với ISteamUtils.

ECheckFileSignature

Kết quả của lệnh gọi tới CheckFileSignature

TênGiá trịMô tả
k_ECheckFileSignatureInvalidSignature0
k_ECheckFileSignatureValidSignature1
k_ECheckFileSignatureFileNotFound2
k_ECheckFileSignatureNoSignaturesFoundForThisApp3
k_ECheckFileSignatureNoSignaturesFoundForThisFile4

EGamepadTextInputLineMode

Điều khiển số lượng dòng được phép cho khung nhập văn bản từ tay cầm của Big Picture

TênGiá trịMô tả
k_EGamepadTextInputLineModeSingleLine0
k_EGamepadTextInputLineModeMultipleLines1

EGamepadTextInputMode

Chế độ nhập vào cho khung nhập văn bản từ tay cầm của Big Picture

TênGiá trịMô tả
k_EGamepadTextInputModeNormal0
k_EGamepadTextInputModePassword1

EFloatingGamepadTextInputMode

Điều khiển chế độ cho bàn phím nổi

TênGiá trịMô tả
k_EFloatingGamepadTextInputModeModeSingleLine0Enter sẽ ẩn bàn phím
k_EFloatingGamepadTextInputModeModeMultipleLines1Người dùng sẽ phải tự ẩn đi bàn phím
k_EFloatingGamepadTextInputModeModeEmail2Bàn phím được hiển thị ở chế độ đặc biệt giúp nhập email dễ dàng hơn
k_EFloatingGamepadTextInputModeModeNumeric3Bàn phím số được hiện lên

ESteamAPICallFailure

Các kết quả gọi Steam API không thành công được trả về bởi GetAPICallFailureReason.

TênGiá trịMô tả
k_ESteamAPICallFailureNone-1Không có hỏng.
k_ESteamAPICallFailureSteamGone0Phần mềm Steam trên máy đã dừng hoạt động, có thể bị treo hoặc ép đóng.
k_ESteamAPICallFailureNetworkFailure1Mất hoặc đã bị hỏng các kết nối mạng tới máy chủ Steam.
Hàm callback SteamServersDisconnected_t sẽ được gọi trong khoảng thời gian đó, và hàm callback SteamServersConnected_t sẽ gửi khi client có thể giao tiếp với máy chủ Steam lần nữa.
k_ESteamAPICallFailureInvalidHandle2Handle chuyển qua SteamAPICall_t không còn nữa.
k_ESteamAPICallFailureMismatchedCallback3GetAPICallResult được gọi với giá trị callback không đúng cho API call này.

Hằng số

Đây là các hằng số được định nghĩa để dùng với ISteamUtils.

TênLoạiGiá trịMô tả
STEAMUTILS_INTERFACE_VERSIONconst char *"SteamUtils009"