public static VehicleScapeAPI.Result LoadDatabase(string filename)
        {
            VehicleScapeAPI.Result result = Initialize();
            if (result != VehicleScapeAPI.Result.ResultOk && result != VehicleScapeAPI.Result.ResultAlreadyInitialized)
            {
                return(result);
            }

            if (result == VehicleScapeAPI.Result.ResultAlreadyInitialized)
            {
                result = VehicleScapeAPI.Result.ResultOk;
            }

            int networkCount = 0;

            result = VehicleScapeAPI.GetNetworks(IntPtr.Zero, ref networkCount);
            if (networkCount <= 0)
            {
                return(result);
            }
            VehicleScapeAPI.Network[] networks = new VehicleScapeAPI.Network[networkCount];
            VehicleScapeAPI.GetNetworks(networks, ref networkCount);
            uint networkHandle = networks[0].handle;

            VehicleScapeAPI.Database database = new VehicleScapeAPI.Database();
            result = VehicleScapeAPI.AddDatabase(networkHandle, filename, VehicleScapeAPI.DatabaseType.DatabaseTypeJ1939NoPgnOffset, ref database);
            return(result);
        }