2016-12-08 30 views
0

フォームが実行されるたびにプログラムが特定の関数を実行するようにします。 この関数は、プロセスのbaseAdressを取得することです。 現在のコード:C#フォームがロードされるたびに呼び出す関数

[STAThread] 
     static void Main() 
     { 

      Application.EnableVisualStyles(); 
      Application.SetCompatibleTextRenderingDefault(false); 
      Application.Run(new Adicionar()); 

      if (getmodule()) { 
       MessageBox.Show(Convert.ToString(baseAdress)); //Dunno if this is going to work but it's just to see if it's getting a baseAdress; 
       adress d = new adress(); 
       d.Adress = (0x6C7FC + baseAdress + 0xA82020); 
      } 
} 
     static bool getmodule(){ .... } 

どのようにすることができますか?

+0

これは正常に構築できましたか? – Yaman

+0

@Yamanいいえ「CS0120」はコンパイラエラーです。 –

+0

ええ、staitcメソッドはオブジェクトなしで(クラスレベルで)呼び出すことができるので、内部にオブジェクトがない場合は、getmodule staticを宣言して参照する必要があります。 – Yaman

答えて

0

ここでは、mainが静的​​メソッドであることがわかります。静的メソッドから非静的メソッドを呼び出すことはできません。静的メソッドとしてコールする必要がある場合は静的メソッドを呼び出すことはできません。だから静的メソッドとしてそれを作る:

static bool getmodule() 
    {  
    // do somethong here 
    } 
関連する問題