C#怎么获取任务管理器中应用程序列表名称

C#怎么获取任务管理器中应用程序列表名称,第1张

以获取QQ的路径举例: string QQ目录 = SystemIOPathGetDirectoryName( SystemDiagnosticsProcessGetProcessesByName( "QQ" )[0]MainModuleFileName );

这个还真没法获取。所谓“工程”,是对源代码的一种统筹管理,只在程序的设计阶段或者说对程序的源代码起作用,在程序的运行阶段或者说编译为可执行文件之后,程序就跟源代码以及“工程”没有直接关系了,因为已经变成机器码了。换个角度来说,两个源代码完全一样的VB工程,编译出的exe文件也完全一样,那现在这个exe文件怎么可能回溯出自己是出于哪个工程呢?

VB6中跟工程名称比较接近的属性是 AppTitle ,它是应用程序的标题(它是显示在任务管理器中的标题,不是窗体的标题),在创建工程的时候会默认与工程名称一致,但它是可以修改的,而且几乎百分百都会改,谁愿意自己的程序标题都是“工程1”、“工程2”这么老土的啊?

Android开发过程中我们有时需要使用第三方apk资源,而启动第三方apk在某些情况下需要指定相应的包名和启动的Activity名,这个时候就需要获取这两个名称,我们可以使用如下三种方法:

1、使用aapt //aapt是sdk自带的一个工具,在你安装的Eclipse路径下的sdk\build-tools\中,如我的是D:\Eclipse\androidTools\sdk\build-tools\android-442,如果你下载有apk反编译工具,也可以直接使用里面的aapt

以“GO备份apk”为例,先进入cmd命令行窗口,然后运行:D: -> Eclipse\androidTools\sdk\build-tools\android-442

-> aapt dump badging C:\Users\Administrator\Desktop\GO备份apk,即可获取到AndroidManifestxml中我们需要的内容,如

package: name='comjiubanggobackupex'

launchable-activity: name='comjiubanggobackupproStartupPageActivity'

2、查看AndroidManifestxml

同样是查看AndroidManifestxml,这里我们可以采用反编译方法来获取信息,同样是打开cmd命令行窗口,然后运行:E:

-> apk反编译工具\apktool\apktool -> apktoolbat d -f C:\Users\Administrator\Desktop\GO备份apk GO备份,然后打开“GO备份”文件夹,打开droidManifestxml文件,找到manifest节点的package属性值package="comjiubanggobackupex"语句即为包名,查找androidintentactionMAIN和androidintentcategoryLAUNCHER对应的activity,该activity对应的android:name属性即为入口activity名称,如<activity

android:name="comjiubanggobackupproStartupPageActivity"。

3、使用uiautomatorviewer

可以直接在命令行输入uiautomatorviewer,打开获取屏幕截图工具,连接手机,打开所要获取包名的应用,然后获取其截图,根据截图查看package即可,uiautomatorviewer的使用这里就不做介绍了。使用这个需要注意的是,该app必须是有界面的,否则无法获取。

另外,

androidintentactionMAIN 属性决定应用程序最先启动的Activity

androidintentcategoryLAUNCHER属性决定应用程序是否显示在程序列表里

VC中使用GetModuleFileName()函数来获取当前应用程序路径。具体实现代码如下:

CString

g_AppPath;

char

cIniFileName[MAX_PATH];

GetModuleFileName(NULL,cIniFileName,sizeof(cIniFileName))

;

char

p

=

strrchr(cIniFileName,'\\')

;

g_AppPathFormat("%s",cIniFileName);

其中MAX_PATH是系统的一个

宏定义

,表示数组最长长度,为260。

在Android中,应用程序的版本号是在AndroidManifestxml文件中进行配置的,而PackageInfo类则封装了从该配置文件中获取的所有信息,描述了包内容的整体信息,因此,可以使用PackageInfo对象的versionName属性获取应用的版本号。要怎么获取PackageInfo对象呢?可以通过PackageManager对象来获取。PackageManager是一个检索当前已安装在设备上的相关应用程序包的各种信息的类。PackageManager对象中的getPackageInfo方法可以获取PackageInfo对象,该方法需要传递两个参数:应用包名和条件。通常情况下,应用程序的包名可以通过Activity或Context(Activity继承自Context)的getPackageName()方法获取,而添加可以有很多设置,通常设置为0。最后是PackageManager对象的获取,Context对象提供了getPackageManager()方法来获取该对象。

以上就是关于C#怎么获取任务管理器中应用程序列表名称全部的内容,包括:C#怎么获取任务管理器中应用程序列表名称、VB6如何用代码获取当前工程的名称、如何查看Android应用apk的包名和入口Activity名称等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/10150805.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存