public static void Init() { FingerprintService.InitFingerprint(new WindowsFingerprint()); // These loosely typed parameter lists are rather gross. Is there a cleaner way to do this? // params: channel, autoReconnect PlatformTypes.Register <IPipeClient>((arr) => new WindowsPipeClient((string)arr[0], (arr.Length > 1) ? (bool)arr[1] : false)); // params: channel PlatformTypes.Register <IPipeServer>((arr) => new WindowsPipeServer((string)arr[0])); PlatformTypes.Register <IGUIChecks>((arr) => new WindowsGUIChecks()); PlatformTypes.Register <IAntitampering>((arr) => new WindowsAntitampering()); PlatformTypes.Register <INetworkInfo>((arr) => new NetworkListUtil()); PlatformTypes.Register <IAuthenticationStorage>((arr) => new RegistryAuthenticationStorage()); PlatformTypes.Register <IPathProvider>((arr) => new WindowsPathProvider()); PlatformTypes.Register <IFilterAgent>((arr) => new WindowsFilterAgent()); PlatformTypes.Register <IFilterUpdater>((arr) => new WindowsFilterUpdater()); }
public static void Init() { FingerprintService.InitFingerprint(new MacFingerprint()); PlatformTypes.Register <IPipeServer>((arr) => new SocketPipeServer()); // params: channel PlatformTypes.Register <IPipeClient>((arr) => new SocketPipeClient()); PlatformTypes.Register <IGUIChecks>((arr) => new MacGUIChecks()); PlatformTypes.Register <IAntitampering>((arr) => new MacAntitampering()); PlatformTypes.Register <INetworkInfo>((arr) => new MacNetworkInfo()); PlatformTypes.Register <IAuthenticationStorage>((arr) => new FileAuthenticationStorage()); PlatformTypes.Register <IPathProvider>((arr) => new MacPathProvider()); NativeLog.Init(); }