1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
using System;
using System.Runtime.InteropServices;
namespace Steamworks;
public static class SteamAppList
{
public static uint GetNumInstalledApps()
{
InteropHelp.TestIfAvailableClient();
return NativeMethods.ISteamAppList_GetNumInstalledApps(CSteamAPIContext.GetSteamAppList());
}
public static uint GetInstalledApps(AppId_t[] pvecAppID, uint unMaxAppIDs)
{
InteropHelp.TestIfAvailableClient();
return NativeMethods.ISteamAppList_GetInstalledApps(CSteamAPIContext.GetSteamAppList(), pvecAppID, unMaxAppIDs);
}
public static int GetAppName(AppId_t nAppID, out string pchName, int cchNameMax)
{
InteropHelp.TestIfAvailableClient();
IntPtr intPtr = Marshal.AllocHGlobal(cchNameMax);
int num = NativeMethods.ISteamAppList_GetAppName(CSteamAPIContext.GetSteamAppList(), nAppID, intPtr, cchNameMax);
pchName = ((num != -1) ? InteropHelp.PtrToStringUTF8(intPtr) : null);
Marshal.FreeHGlobal(intPtr);
return num;
}
public static int GetAppInstallDir(AppId_t nAppID, out string pchDirectory, int cchNameMax)
{
InteropHelp.TestIfAvailableClient();
IntPtr intPtr = Marshal.AllocHGlobal(cchNameMax);
int num = NativeMethods.ISteamAppList_GetAppInstallDir(CSteamAPIContext.GetSteamAppList(), nAppID, intPtr, cchNameMax);
pchDirectory = ((num != -1) ? InteropHelp.PtrToStringUTF8(intPtr) : null);
Marshal.FreeHGlobal(intPtr);
return num;
}
public static int GetAppBuildId(AppId_t nAppID)
{
InteropHelp.TestIfAvailableClient();
return NativeMethods.ISteamAppList_GetAppBuildId(CSteamAPIContext.GetSteamAppList(), nAppID);
}
}
|