2011-11-17 94 views
0

我打算创建一个可以通用于所有桌面应用程序的授权模块。所以我认为在现有的应用程序中不需要编写任何或更少的代码就可以实现这一功能,而这些应用程序将由此授权模块激活。在windows c中读取exe文件#

那么有没有什么办法可以让用户通过exe文件的位置,系统应该捕获特定位置的exe文件,系统应该在exe文件中获得所有可用的窗口文件?

我不确定这是否可行,但我需要知道是否有任何方法可以做到这一点。这对于我来说能够减少并发症的发展是有帮助的。

回答

0

家伙,我找到了解决这个....我用下面的方法...

  Assembly SampleAssembly = Assembly.LoadFrom("Assembly path here"); 

      // Display all the types contained in the specified assembly. 
      foreach (Type oType in SampleAssembly.GetTypes()) 
      { 
       Console.WriteLine(oType.Name); 
      } 

这个完美工作对我来说....

VinayC感谢您的支持伙伴。 ..真的很感激它:) :)

+0

完美!再次拯救我的一天...... :) – vsriganan

0

您可以从其路径中读取实际的可执行映像数据,并且万一它的托管(.NET)可执行文件可以使用元数据进行一些分析。在这种情况下,可以浏览可执行程序集中的所有类型(以及可能来自同一目录的其他程序集),并找出从System.Windows.Forms.Form继承的类/类型的数量。

但是,考虑到这些应用程序可能在您的控制之下,更好的方法是在这些可执行文件中有一个公共API,它将为您提供相关信息。

+0

一个更加理智的方法不会试图创造我猜将是一个令人费解的许可证制度。 ;) –