Huh?
I don't get what you're trying to say, but big words always allude me.
I'll give a whack at it though.
I read it as you're trying to add new CB fields from a component instead of a plugin, correct?
If this is the case then you need to setup the INSERT queries to insert the new fields.
Here's an example straight from CB it self. Do NOT attempt to use this query, but use it as an example for building your own.
[code:1]
INSERT INTO `jos_comprofiler_fields` VALUES (42, 'username', 'username', '#__users', '_UE_UNAME', '_UE_VALID_UNAME', 'predefined', 0, 0, 1, 11, 0, 0, 0, NULL, '', 1, 1, 1, 1, 0, 1, 1, 1, 1, 'fieldMinLength=\nfieldValidateForbiddenList_register=http:,https:,mailto:,//.,<a,</a>,&#\nfieldValidateForbiddenList_edit=');
[/code:1]
You'll also need the table structure to understand what each comma means.
So here's the table structure. Each line represents a value before a comma.
[code:1]
`fieldid` int(11) NOT NULL auto_increment,
`name` varchar(50) NOT NULL default '',
`tablecolumns` text NOT NULL,
`table` varchar(50) NOT NULL default '#__comprofiler',
`title` varchar(255) NOT NULL,
`description` mediumtext NOT NULL,
`type` varchar(50) NOT NULL default '',
`maxlength` int(11) default NULL,
`size` int(11) default NULL,
`required` tinyint(4) default '0',
`tabid` int(11) default NULL,
`ordering` int(11) default NULL,
`cols` int(11) default NULL,
`rows` int(11) default NULL,
`value` varchar(50) default NULL,
`default` mediumtext,
`published` tinyint(1) NOT NULL default '1',
`registration` tinyint(1) NOT NULL default '0',
`profile` tinyint(1) NOT NULL default '1',
`displaytitle` tinyint(1) NOT NULL default '1',
`readonly` tinyint(1) NOT NULL default '0',
`searchable` tinyint(1) NOT NULL default '0',
`calculated` tinyint(1) NOT NULL default '0',
`sys` tinyint(4) NOT NULL default '0',
`pluginid` int(11) NOT NULL default '0',
`params` mediumtext,
[/code:1]
Good luck.