c# - 非静态字段、方法或属性需要对象引用
问题描述
using System;
using System.Diagnostics;
using System.Reflection.Emit;
using System.Threading;
using EasyExploits;
namespace ConsoleApp1
{
class Program
{
EasyExploits.Module module = new EasyExploits.Module();
static void Main(string[] args)
{
Module.LaunchExploit();
Console.ForegroundColor = ConsoleColor.Green;
Label:
Console.WriteLine("Please Type 'Inject'");
string proccess1 = Console.ReadLine();
if (proccess1 == "Inject")
{
Console.WriteLine("");
Console.WriteLine("Injected!");
goto Begin;
}
else
{
goto Label;
}
Begin:
Console.WriteLine("");
Console.WriteLine("Enter a script and press enter to execute it.");
string answer = Console.ReadLine();
Module.ExecuteScript(answer);
goto Begin
}
}
}
所以,我试图找到一个解决这个问题的方法,但我找不到一个,所以我来堆栈溢出。无论如何,我的控制台应用程序应该在将脚本粘贴到输入时注入 EasyExploits.DLL 并执行 Lua 脚本。但是,我收到错误消息,“非静态字段、方法或属性‘Module.LaunchExploit()’需要对象引用”和“非静态字段、方法需要对象引用,或属性 'Module.ExecuteScript(string)'"我是 C# 的初学者,并不真正理解这个错误,所以如果有人能用对初学者友好的简单步骤引导我完成它,那就太好了。
解决方案
您的Main
方法是静态的,您只能从静态方法访问同一类的静态成员。您还需要做所有事情来制作EasyExploits.Module
静态:
private static readonly EasyExploits.Module module = new EasyExploits.Module();
推荐阅读
- racket - 为什么定义语法 my-class 中只有一种方法?
- javascript - 阻止我的 div 的 onClick 处理程序的段落标记
- mysql - 如何从另一个表中的 2 个不同表中获取总和
- c# - 在 dotnet (c#) 中使用 netlink 连接器?
- docker - Docker quickstart 终端报错 pull image
- c# - WPF中的随机迷宫生成器
- php - 从 PHP 中的列数据库计算总和
- javascript - 如何在其功能之外使用父密钥请求的结果
- authentication - 如何对将数据推送到 Power BI 的自动化应用进行身份验证
- c# - 为什么单选按钮在循环时没有从 gridview 中读取?