Exemplo n.º 1
0
int set_registry_value(const char *dir, const char *name, unsigned int val)
{
	int ret = 0;
	struct RegParam reg;
	REGHANDLE h;

	memset(&reg, 0, sizeof(reg));
	reg.regtype = 1;
	reg.namelen = strlen("/system");
	reg.unk2 = 1;
	reg.unk3 = 1;
	strcpy(reg.name, "/system");
	if(sceRegOpenRegistry(&reg, 2, &h) == 0)
	{
		REGHANDLE hd;
		if(!sceRegOpenCategory(h, dir, 2, &hd))
		{
			if(!sceRegSetKeyValue(hd, name, &val, 4))
			{
				printf("Set registry value\n");
				ret = 1;
				sceRegFlushCategory(hd);
			}
			sceRegCloseCategory(hd);
		}
		sceRegFlushRegistry(h);
		sceRegCloseRegistry(h);
	}

	return ret;
}
Exemplo n.º 2
0
int get_registry_value(const char *dir, const char *name, u32 *val)
{
    int ret = 0;
    struct RegParam reg;
    REGHANDLE h;

    memset(&reg, 0, sizeof(reg));
    reg.regtype = 1;
    reg.namelen = strlen("/system");
    reg.unk2 = 1;
    reg.unk3 = 1;
    strcpy(reg.name, "/system");
    if(sceRegOpenRegistry(&reg, 2, &h) == 0)
    {
        REGHANDLE hd;
        if(!sceRegOpenCategory(h, dir, 2, &hd))
        {
            REGHANDLE hk;
            unsigned int type, size;

            if(!sceRegGetKeyInfo(hd, name, &hk, &type, &size))
            {
                if(!sceRegGetKeyValue(hd, hk, val, 4))
                {
                    ret = 1;
                    sceRegFlushCategory(hd);
                }
            }
            sceRegCloseCategory(hd);
        }
        sceRegFlushRegistry(h);
        sceRegCloseRegistry(h);
    }
    return ret;
}
Exemplo n.º 3
0
int LPP_UtilsSetSystemReg(const char *dir, const char *name, u32 val)
{
    struct RegParam reg;
	REGHANDLE handle;
	
	memset(&reg, 0, sizeof(struct RegParam));
	reg.regtype = 1;
	reg.namelen = 7;
	reg.unk2 = 1;
	reg.unk3 = 1;
	memcpy(reg.name, "/system", reg.namelen);
	
	int ret = -1;
	
	if(sceRegOpenRegistry(&reg, 2, &handle) == 0)
	{
	    REGHANDLE hd;
		if(sceRegOpenCategory(handle, dir, 2, &hd) == 0)
		{
		    if(sceRegSetKeyValue(hd, name, &val, 4))
		    {
		        ret = 0;
			    sceRegFlushCategory(hd);
		    }
	 	    else
		    {
		        sceRegCreateKey(hd, name, REG_TYPE_INT, 4);
			    sceRegSetKeyValue(hd, name, &val, 4);
			    ret = 0;
			    sceRegFlushCategory(hd);
		    }
		    sceRegCloseCategory(hd);
	    }
	    sceRegFlushRegistry(handle);
	    sceRegCloseRegistry(handle);
	}
	
	return ret;
}
Exemplo n.º 4
0
//Registry
int SetRegistryValue(const char *dir, const char *name, u32 val)
{
    int ret = 0;
    struct RegParam reg;
    REGHANDLE h;

    memset(&reg, 0, sizeof(reg));
    reg.regtype = 1;
    reg.namelen = strlen("/system");
    reg.unk2 = 1;
    reg.unk3 = 1;
    strcpy(reg.name, "/system");
    if(sceRegOpenRegistry(&reg, 2, &h) == 0)
    {
        REGHANDLE hd;
        if(!sceRegOpenCategory(h, dir, 2, &hd))
        {
            if(!sceRegSetKeyValue(hd, name, &val, 4))
            {
                ret = 1;
                sceRegFlushCategory(hd);
            }
                        else
                        {
                                sceRegCreateKey(hd, name, REG_TYPE_INT, 4);
                                sceRegSetKeyValue(hd, name, &val, 4);
                                ret = 1;
                sceRegFlushCategory(hd);
                        }
            sceRegCloseCategory(hd);
        }
        sceRegFlushRegistry(h);
        sceRegCloseRegistry(h);
    }

        return ret;
}
Exemplo n.º 5
0
int LPP_UtilsGetSystemReg(const char *dir, const char *name, u32 *val)
{
    struct RegParam reg;
    REGHANDLE handle = 0;
	memset(&reg, 0, sizeof(struct RegParam));
	reg.regtype = 1;
	reg.namelen = 7;
	reg.unk2 = 1;
	reg.unk3 = 1;
	memcpy(reg.name, "/system", reg.namelen);
	
	int ret = -1;
	
	if(sceRegOpenRegistry(&reg, 1, &handle) == 0)
	{
	    REGHANDLE hd;
		if(sceRegOpenCategory(handle, dir, 2, &hd) == 0)
		{
		    REGHANDLE hk;
			u32 type, size;
			
			if(sceRegGetKeyInfo(hd, name, &hk, &type, &size) == 0)
			{
			    if(sceRegGetKeyValue(hd, hk, val, 4) == 0)
				{
				    ret = 0;
					sceRegFlushCategory(hd);
				}
			}
			sceRegCloseCategory(hd);
		}
		sceRegFlushRegistry(handle);
		sceRegCloseRegistry(handle);
	}
	
	return ret;
}