first of all I have oracle 12 c on windows 8.1 pro operating system and let's we call my device ComputerA I hade tried to deploy .net function which name is clrfn by unsing visual C# clr project that it's code is
public static int ClrFN(int x) { return x+100; }
And after deployment of .net project , this function was added to oracle functions under the same connection settings used in deployment operation and ofcourse that is a normal result of deploy operation As mentioned in this link http://docs.oracle.com/cd/E48297_01/doc/win.121/e18596/demo.htm
But if I want to move this function to another device called ComputerB which hasn't deployed this function and has oracle edition i applied the following steps 1-copy the dll(COMPLETECLR_DLL) that is found under the path oraclehome/BIN/CLR in Computer A To the same path on ComputerB
2- add the following syntax in oracle developer
CREATE OR REPLACE LIBRARY CLRLIBRARY1_DLL AS '$ORACLE_HOME\bin\clr\CompleteCLR.dll'; /
3- grant execute on CLRLIBRARY1_DLL To sys
--sys is same account that the dll was deployed under in computer A
But when executing clrfn on computerB I am still getting this error Select clrfn(1) from dual
01031.00000 in sufficient privileges
While every thing is ok on Computer A
Is what I'm doing right meaning can I call a function that is deployed on computerA on another computer (computer B) with out deploying .net project on computerB