コード例 #1
0
 private void ExecuteAssemblyWithArguments(Process process, IFunctionName moduleFunction, byte[] arguments)
 {
     _memoryManager.Add(
         process,
         _processManager.Execute(moduleFunction.Module, moduleFunction.Function, arguments),
         true
         );
 }
コード例 #2
0
ファイル: CodeGenerator.cs プロジェクト: zenuas/Roku
 public static bool EqualsFunctionCaller(FunctionSpecialization left, IFunctionName right, GenericsMapper right_g)
 {
     if (left.Body != right)
     {
         return(false);
     }
     return(left.GenericsMapper.Keys.And(x => left.GenericsMapper[x] == right_g[x]));
 }
コード例 #3
0
 /// <summary>
 ///  Execute a function in a process in a new thread with a <see cref="FunctionCallArguments" /> argument
 /// </summary>
 /// <param name="process">The process the thread will be created and executed in.</param>
 /// <param name="functionName">The name of the function to be executed.</param>
 /// <param name="arguments">The class which will be serialized and passed to the function being executed.</param>
 private void ExecuteAssemblyFunctionWithArguments(
     Process process,
     IFunctionName functionName,
     FunctionCallArguments arguments)
 {
     _processManager.Execute(
         functionName.Module,
         functionName.Function,
         MarshallingHelper.StructToByteArray(arguments),
         false);
 }
コード例 #4
0
 /// <summary>
 ///  Execute a function in a process in a new thread with a <see cref="FunctionCallArguments" /> argument
 /// </summary>
 /// <param name="process">The process the thread will be created and executed in.</param>
 /// <param name="functionName">The name of the function to be executed.</param>
 /// <param name="arguments">The class which will be serialized and passed to the function being executed.</param>
 private void ExecuteAssemblyFunctionWithArguments(
     Process process,
     IFunctionName functionName,
     FunctionCallArguments arguments)
 {
     _memoryManager.Add(
         process,
         _processManager.Execute(
             functionName.Module,
             functionName.Function,
             Binary.StructToByteArray(arguments),
             false),
         false
         );
 }
コード例 #5
0
 private void ExecuteAssemblyWithArguments(IFunctionName moduleFunction, byte[] arguments, bool waitForThreadExit)
 {
     _processManager.Execute(moduleFunction.Module, moduleFunction.Function, arguments, waitForThreadExit);
 }
コード例 #6
0
 public void ExecuteWithArguments(Process process, IFunctionName function, IBinarySerializer arguments)
 => ExecuteAssemblyWithArguments(process, function, arguments.Serialize());
コード例 #7
0
 public FunctionSpecialization(IFunctionName body, GenericsMapper gen_map)
 {
     Body           = body;
     GenericsMapper = gen_map;
 }