Viser en lang række oplysninger og handlinger for applikationer og
Indhold, der kan downloades (DLC).
Medlemsfunktioner
Medlemsfunktioner for
ISteamApp
kaldes gennem den globale accessor-funktion
SteamApp()
.
BGetDLCDataByIndex
bool BGetDLCDataByIndex( int iDLC, AppId_t *pAppID, bool *pbAvailable, char *pchName, int cchNameBufferSize );
Navn | Type | Beskrivelse |
iDLC | int | DLC-indekset til at få mellem 0 og ISteamApps::GetDLCCount. |
pAppID | AppId_t * | Returnerer app-ID'et for DLC'et. |
pbAvailable | bool * | Returnerer, om DLC'et i øjeblikket er tilgængeligt i Steam-butikken. Returnerer false, hvis DLC'et ikke har en synlig butiksside |
pchName | char * | Returnerer navnet på DLC'et ved at kopiere det ind i denne buffer. |
cchNameBufferSize | int | Længden af pchName -bufferen. |
Returnerer metadata for et DLC ud fra indeks.
Returværdier: bool
true, hvis det nuværende app-ID har DLC tilknyttet, og
iDLC
ligger mellem 0 og
ISteamApps::GetDLCCount, ellers
false.
Eksempel:int32 DLCCount = SteamApps()->GetDLCCount();
for ( int i = 0; i < DLCCount; ++i ) {
AppId_t appId;
bool available;
char name[128];
bool success = SteamApps()->BGetDLCDataByIndex( i, &appId, &available, name, 128 );
if ( success ) {
// Gør noget med DLC-dataene
}
}
BIsAppInstalled
bool BIsAppInstalled( AppId_t appID );
Navn | Type | Beskrivelse |
appID | AppId_t | App-ID'et for applikationen, som skal kontrolleres. |
Tjekker, om en specifik app er installeret.
Det kan være, at appen rent faktisk ikke ejes af den aktuelle bruger, men at brugeren har den til overs fra en gratis weekend eller lignende.
Dette fungerer kun for basisapplikationer, ikke
Indhold, der kan downloades (DLC). Brug i stedet
ISteamApps::BIsDlcInstalled til DLC.
Returværdier: bool
true, hvis det angivne app-ID er installeret, ellers
false.
BIsCybercafe
bool BIsCybercafe();
Tjekker, om det aktuelle app-ID er til netcaféer.
Returværdier: bool
true hvis licensen er til netcaféer, ellers
false.
Forældet – bruges ikke længere.
BIsDlcInstalled
bool BIsDlcInstalled( AppId_t appID );
Navn | Type | Beskrivelse |
appID | AppId_t | App-ID'et for DLC'et, som skal kontrolleres. |
Tjekker, om brugeren ejer et specifikt DLC, og om DLC'et er installeret.
Returværdier: bool
true hvis brugeren ejer DLC'et, og det er installeret, ellers
false.
Bemærk: Bør kun bruges til simpel kontrol af klientsiden og er ikke beregnet til at give emner i spillet.
BIsLowViolence
bool BIsLowViolence();
Tjekker, om licensen, som ejes af brugeren, giver depoter med begrænset vold.
Depoter med begrænset vold er nyttige til eksemplarer, der sælges i lande, som har indholdsrestriktioner.
Returværdier: bool
true, hvis licensen, som ejes af brugeren, har depoter med begrænset vold, ellers
false.
Se også: DepotmonteringsreglerBIsSubscribed
bool BIsSubscribed();
Tjekker, om den aktive bruger abonnerer på det aktuelle app-ID.
BEMÆRK: Dette vil altid returnere
true, hvis du bruger Steam-DRM eller kalder
SteamAPI_RestartAppIfNecessary.
Returværdier: bool
true, hvis den aktive bruger ejer det aktuelle app-ID, ellers
false.
BIsSubscribedApp
bool BIsSubscribedApp( AppId_t appID );
Navn | Type | Beskrivelse |
appID | AppId_t | App-ID'et, som skal tjekkes. |
Tjekker, om den aktive bruger abonnerer på et angivet app-ID.
Brug kun dette, hvis du har brug for at tjekke ejerskab for et andet spil, som er relateret til dit, for eksempel en demo.
Returværdier: bool
true, hvis den aktive bruger abonnerer på det angivne app-ID, ellers
false.
BIsSubscribedFromFamilySharing
bool BIsSubscribedFromFamilySharing();
Tjekker, om den aktive bruger tilgår det aktuelle appID via en midlertidig familiedelt licens, som ejes af en anden bruger.
Hvis du har brug for at finde SteamID'et på den permanente licensejer, skal du bruge
GetAppOwner.
Returværdier: bool
true, – hvis den aktive bruger tilgår det aktuelle app-ID via familiedeling, ellers
false.
BIsSubscribedFromFreeWeekend
bool BIsSubscribedFromFreeWeekend();
Tjekker, om brugeren abonnerer på det aktuelle app-ID gennem en kampagne med gratis weekend.
Før du bruger denne, bedes du kontakte en teknisk kontoadministrator hos Valve via
Steamworks-diskussionssiden for at pakke dem korrekt og sikre din gratis weekend.
Returværdier: bool
true, hvis den aktive bruger abonnerer på det aktuelle app-ID via en gratis weekend, ellers returneres
false for alle andre licenstyper.
BIsTimedTrial
bool BIsTimedTrial(uint32* punSecondsAllowed, uint32* punSecondsPlayed);
Navn | Type | Beskrivelse |
punSecondsAllowed | uint32 * | Returnerer antal sekunder, den tidsbegrænsede prøveversion vises |
punSecondsPlayed | uint32 * | Returnerer antal sekunder, brugeren har spillet indtil videre |
Tjekker, om brugeren abonnerer på det aktuelle app-ID gennem en tidsbegrænset prøveperiode. I så fald returneres true, og den resterende tid, som den tidsbegrænsede prøveversion kan spilles i, vises sammen med den aktuelle tid, brugeren allerede har spillet.
Returværdier: bool
true, hvis den aktive bruger abonnerer på det aktuelle app-ID via en tidsbegrænset prøveversion, ellers returneres
false for alle andre licenstyper.
Se også: ISteamApps::TimedTrialStatus_tBIsVACBanned
bool BIsVACBanned();
Tjekker, om brugeren har en VAC-udelukkelse på sin konto.
Returværdier: bool
true, hvis brugeren har en VAC-udelukkelse på sin konto, ellers
false.
GetAppBuildId
int GetAppBuildId();
Henter build-ID'et for denne app. Dette kan ændre sig når som helst baseret på backend-opdateringer til spillet.
Returværdier: int
Det nuværende build-ID for denne app. Standardindstillingen er 0, hvis du ikke kører et build downloadet fra Steam.
GetAppInstallDir
uint32 GetAppInstallDir( AppId_t appID, char *pchFolder, uint32 cchFolderBufferSize );
Navn | Type | Beskrivelse |
appID | AppId_t | App-ID'et, som der hentes installationsmappe til. |
pchFolder | char * | Strengens buffer, som mappens sti bliver kopieret til. |
cchFolderBufferSize | uint32 | Størrelsen i bytes på pchFolder -bufferen. |
Henter installationsmappen for et specifikt app-ID.
Dette fungerer, selvom applikationen ikke er installeret, baseret på hvor spillet ville blive installeret med standardplaceringen for Steam-biblioteket.
Returværdier: uint32Returnerer stien til installationsmappen som en streng i bufferen, som gives i pchFolder, og returnerer antallet af bytes, som blev kopieret ind i denne buffer.
GetAppOwner
CSteamID GetAppOwner();
Henter Steam-ID'et på den, der rent faktisk ejer den aktuelle applikation. Dette er ikke nødvendigvis den samme som den aktuelle bruger, hvis brugeren tilgår applikationen via familiedeling.
Returværdier: CSteamIDDen originale ejer af den aktuelle app.
GetAvailableGameLanguages
const char * GetAvailableGameLanguages();
Henter en kommasepareret liste med sprogene, som den aktuelle app understøtter.
Se den fulde liste over sprog, som kan returneres, her:
Lokalisering og sprog.
Returværdier: const char *
Returnerer en kommasepareret liste med sprog.
Se også: ISteamApps::GetCurrentGameLanguage,
ISteamUtils::GetSteamUILanguageGetCurrentBetaName
bool GetCurrentBetaName( char *pchName, int cchNameBufferSize );
Navn | Type | Beskrivelse |
pchName | char * | Bufferen, som betaens navn vil blive kopieret ind i. |
cchNameBufferSize | int | Den samlede størrelse af pchName-bufferen. |
Tjekker, om brugeren kører fra en betagren, og henter navnet på grenen, hvis det er tilfældet.
Returværdier: bool
true, hvis brugeren er på en betagren, ellers
false.
GetNumBetas
int GetNumBetas( int *pnAvailable, int *pnPrivate );
Navn | Type | Beskrivelse |
pnAvailable | int* | Antal betagrene, der er tilgængelige for den aktuelle bruger. |
pnPrivate | int* | Hvor mange af disse er private betaer. |
Returnerer det samlede antal kendte appgrene (inklusive standardgrenen "public"), som kan itereres med getBetaInfo ()
Returværdier: int
Antal kendte appgrene
GetBetaInfo
bool GetBetaInfo( int iBetaIndex, uint32 *punFlags, uint32 *punBuildID, char *pchBetaName, int cchBetaName, char *pchDescription, int cchDescription );
Navn | Type | Beskrivelse |
iBetaIndex | int | Indeks over grene, der starter med 0, som altid er standardgrenen. |
punFlags | uint32 * | Sæt af flag (EBetaBranchFlags), der beskriver den aktuelle grentilstand. |
punBuildID | uint32 * | Indholdsbuild-ID er angivet som live på denne gren. |
pchBetaName | char * | Betagrennavn |
cchBetaName | int | Størrelse på pchBetaName leveret af den, der foretager opkaldet |
pchDescription | char * | Beskrivelse af betagren |
cchDescription | int | Størrelse på pchDescription leveret af den, der foretager opkaldet |
Hent oplysninger om en appbetagren, såsom navn, beskrivelse og tilstand.
Returværdier: bool
true, hvis indekset for grenen, som sendes, er gyldigt – ellers false.
Eksempel:int32 betaCount = SteamApps()->GetNumBetas( nullptr, nullptr );
for ( int betaIndex = 0; betaIndex < betaCount; ++betaIndex )
{
char name[128];
char description[1024];
uint32 flags = 0; // EBetaBranchFlags
uint32 buildID = 0;
SteamApps()->GetBetaInfo( betaIndex, &flags, &buildID, name, sizeof( name ), description, sizeof( description ) );
}
SetActiveBeta
bool SetActiveBeta( const char *pchBetaName );
Navn | Type | Beskrivelse |
pchBetaName | const char * | Betanavn, som spillet vil skifte til. |
Vælg en betagren til denne app som aktiv. Du skal muligvis genstarte spillet, så Steam kan opdatere indholdet i den pågældende gren.
Returværdier: bool
GetCurrentGameLanguage
const char * GetCurrentGameLanguage();
Henter det aktuelle sprog, som brugeren har angivet.
Dette falder tilbage til brugergrænsefladens sprog på Steam, hvis brugeren ikke udtrykkeligt har valgt et sprog for titlen.
Se den komplette liste over sprog i artiklen om
understøttede sprog.
Returværdier: const char *
Se også: ISteamApps::GetAvailableGameLanguages,
ISteamUtils::GetSteamUILanguageGetDLCCount
int GetDLCCount();
Henter antallet af DLC-enheder for den aktuelle app.
Dette bruges typisk til at loope gennem hvert enkelt DLC og henter oplysninger om hver enkelt med
ISteamApps::BGetDLCDataByIndex.
Returværdier: int
Antallet af DLC-emner for den aktuelle app. Bemærk, at denne værdi muligvis ikke kan overstige 64, alt efter hvor mange ikke-ejede DLC-emner brugeren har. Hvis din app har mange DLC-emner, skal du angive din egen interne liste med kendt DLC, som der skal sammenlignes med.
Eksempel:int32 DLCCount = SteamApps()->GetDLCCount();
for ( int i = 0; i < DLCCount; ++i ) {
AppId_t appId;
bool available;
char name[128];
bool success = SteamApps()->BGetDLCDataByIndex( i, &appId, &available, name, 128 );
if ( success ) {
// Gør noget med DLC-dataene
}
}
GetDlcDownloadProgress
bool GetDlcDownloadProgress( AppId_t nAppID, uint64 *punBytesDownloaded, uint64 *punBytesTotal );
Navn | Type | Beskrivelse |
nAppID | AppId_t | App-ID'et til DLC'et, som skal overvåges. |
punBytesDownloaded | uint64 * | Returnerer antallet af bytes, som er downloadet. |
punBytesTotal | uint64 * | Returnerer den samlede downloadstørrelse i bytes. |
Henter downloadstatussen for valgfrit DLC.
Returværdier: bool
true, hvis det angivne DLC eksisterer, og det i øjeblikket er ved at blive downloadet, ellers
false.
GetEarliestPurchaseUnixTime
uint32 GetEarliestPurchaseUnixTime( AppId_t nAppID );
Navn | Type | Beskrivelse |
nAppID | AppId_t | App-ID'et, som der hentes købstidspunkt til. |
Henter købstidspunktet for den angivne app i Unix Epoch-format (tid siden 1. januar 1970).
Dette er nyttigt til at belønne brugere baseret på deres oprindelige købsdato.
Returværdier: uint32Det første købstidspunkt i Unix Epoch-tid (sekunder siden 1. januar 1970).
GetFileDetails
SteamAPICall_t GetFileDetails( const char*pszFileName );
Navn | Type | Beskrivelse |
pszFileName | const char* | Den absolutte sti og navnet til filen. |
Henter asynkront oplysninger om metadata vedrørende en specifik fil i depotmanifestet.
Giver i øjeblikket:
Filstørrelsen i bytes.
Filens SHA1-hash.
Filens flag.
Returværdier: SteamAPICall_t, som skal bruges med et
FileDetailsResult_t-kaldsresultat.
GetInstalledDepots
uint32 GetInstalledDepots( AppId_t appID, DepotId_t *pvecDepots, uint32 cMaxDepots );
Navn | Type | Beskrivelse |
appID | AppId_t | Appen, som der vises depoter for. |
pvecDepots | DepotId_t * | Et forudallokeret array, som vil blive fyldt med listen over depoter. |
cMaxDepots | uint32 | Det maksimale antal af depoter, som skal hentes, typisk størrelsen af pvecDepots. |
Henter en liste over alle installerede depoter for et givent app-ID i tilslutningsrækkefølgen.
Returværdier: uint32Antallet af depoter, der returneres.
GetLaunchCommandLine
int GetLaunchCommandLine( char *pszCommandLine, int cubCommandLine );
Navn | Type | Beskrivelse |
pszCommandLine | char * | Strengens buffer, som kommandolinjen bliver kopieret til. |
cubCommandLine | int | Størrelsen i bytes på pszCommandLine -bufferen. |
Henter kommandolinjen, hvis spillet blev startet via en Steam-URL, f.eks. steam://run/<appid>//<command line>/. Denne metode er bedst, når man opstarter med en kommandolinje via operativsystemet, hvilket kan være en sikkerhedsrisiko. For at få brugeroversigten til at tilslutte gennem dette og ikke blive placeret i kommandolinjen skal du aktivere "Brug startkommandolinjen" fra siden "Installation" > "Generelt" i din app.
Returværdier: int
Returnerer kommandolinjen som en streng i bufferen, som gives i pszCommandLine, og returnerer antallet af bytes, som blev kopieret ind i denne buffer.
Se også: ISteamApps::NewUrlLaunchParameters_tGetLaunchQueryParam
const char * GetLaunchQueryParam( const char *pchKey );
Navn | Type | Beskrivelse |
pchKey | const char * | Startnøglen, som der testes. Eks.: param1 |
Henter de tilknyttede startparametre, hvis spillet kører via steam://run/<appid>/?param1=value1;param2=value2;param3=value3 osv.
Parameternavne, som starter med tegnet "@", er reserveret til intern brug og vil altid returnere en tom streng.
Parameternavne, som starter med en understregning "_", er reserveret til Steam-funktioner. De kan forespørges af spillet, men det anbefales, at du ikke bruger parameternavne, som begynder med en understregning, til dine egne funktioner.
Returværdier: const char *
Værdien tilknyttet den givne nøgle. Returnerer en tom streng (""), hvis den angivne nøgle ikke findes.
Se også: ISteamApps::NewLaunchQueryParameters_tInstallDLC
void InstallDLC( AppId_t nAppID );
Navn | Type | Beskrivelse |
nAppID | AppId_t | DLC'et, du ønsker at installere. |
Gør det muligt for dig at installere valgfrit DLC.
Returværdier: void
Udløser et
DlcInstalled_t-tilbagekald.
MarkContentCorrupt
bool MarkContentCorrupt( bool bMissingFilesOnly );
Navn | Type | Beskrivelse |
bMissingFilesOnly | bool | Scan kun efter manglende filer, og bekræft ikke "checksum" for hver fil. |
Gør det muligt for dig at gennemtvinge bekræftelse af spilindhold ved næste opstart.
Hvis du opdager, at spillet er forældet (for eksempel ved at klienten registrerer en uoverensstemmelse mellem en version og en server),
kan du bruge MarkContentCorrup til at gennemtvinge en bekræftelse, vise en besked til brugeren og derefter afslutte.
Returværdier: bool
RequestAllProofOfPurchaseKeys
void RequestAllProofOfPurchaseKeys();
Forældet.
RequestAppProofOfPurchaseKey
void RequestAppProofOfPurchaseKey( AppId_t nAppID );
Forældet.
UninstallDLC
void UninstallDLC( AppId_t nAppID );
Navn | Type | Beskrivelse |
nAppID | AppId_t | DLC'et, du ønsker at afinstallere. |
Gør det muligt for dig at afinstallere valgfrit DLC.
Tilbagekald
Disse er tilbagekald, som kan aktiveres ved at kalde
SteamAPI_RunCallbacks. Mange af disse vil blive udløst direkte som svar på medlemsfunktioner tilhørende
ISteamApps
.
AppProofOfPurchaseKeyResponse_t
Bruges kun internt i Steam.
DlcInstalled_t
Udløses, når den aktuelle bruger får ejerskab over DLC'et, og dette DLC er installeret.
Navn | Type | Beskrivelse |
m_nAppID | AppId_t | App-ID'et tilhørende DLC'et, som blev installeret. |
Tilknyttede funktioner: ISteamApps::InstallDLCFileDetailsResult_t
Kaldes efter anmodning om oplysninger til en specifik fil.
Navn | Type | Beskrivelse |
m_eResult | EResult | Lykkedes kaldet? k_EResultOK, hvis det lykkedes, og ellers k_EResultFileNotFound, hvis filen ikke blev fundet. Ingen af de andre felter udfyldes, hvis kaldet ikke blev gennemført. |
m_ulFileSize | uint64 | Den oprindelige filstørrelse i bytes. |
m_FileSHA | uint8[20] | Den oprindelige SHA1-hashfil. |
m_unFlags | uint32 | |
Tilknyttede funktioner: ISteamApps::GetFileDetailsNewUrlLaunchParameters_t
Sendes, når brugeren har udført en Steam-URL med kommandolinje- eller forespørgselsparametre såsom
steam://run/<appid>//?param1=value1;param2=value2;param3=value3;
, mens spillet allerede kører. De nye parametre kan forespørges med
ISteamApps::GetLaunchCommandLine og
ISteamApps::GetLaunchQueryParam.
Dette tilbagekald har ingen felter.
NewLaunchQueryParameters_t
Sendes, når brugeren har udført en Steam-URL med forespørgselsparametre såsom
steam://run/<appid>//?param1=value1;param2=value2;param3=value3;
, mens spillet allerede kører. De nye parametre kan forespørges med
ISteamApps::GetLaunchQueryParam.
Dette tilbagekald har ingen felter.
RegisterActivationCodeResponse_t
Bruges kun internt i Steam.
TimedTrialStatus_t
Sendes hvert minut, når et app-ID ejes via en tidsbegrænset prøveversion.
Navn | Type | Beskrivelse |
m_unAppID | AppId_t | App-ID'et i en tidsbegrænset prøveversion. |
m_bIsOffline | bool | Hvis true, er brugeren offline i øjeblikket. Tilladt/spillet tid henviser til offlinetid, ikke samlet tid. |
m_unSecondsAllowed | uint32 | Hvor mange sekunder appen kan spilles i alt. |
m_unSecondsPlayed | uint32 | Hvor mange sekunder appen allerede er blevet spillet. |
Se også: ISteamApps::BIsTimedTrialEnums
Disse er optællinger, som defineres til brug med ISteamApps.
ERegisterActivationCodeResult
Bruges kun internt i Steam.
Navn | Værdi | Beskrivelse |
k_ERegisterActivationCodeResultOK | 0 | |
k_ERegisterActivationCodeResultFail | 1 | |
k_ERegisterActivationCodeResultAlreadyRegistered | 2 | |
k_ERegisterActivationCodeResultTimeout | 3 | |
k_ERegisterActivationCodeAlreadyOwned | 4 | |
Konstanter
Det følgende er konstanter, som defineres til brug med ISteamApps.
Navn | Type | Værdi | Beskrivelse |
k_cubAppProofOfPurchaseKeyMax | int | 240 | Bruges kun internt i Steam. |
STEAMAPPS_INTERFACE_VERSION | const char * | "STEAMAPPS_INTERFACE_VERSION008" | |