Dell向运行于Windows *** 作系统下的程序提供代码、数据或函数。程序可根据DLL文件中的指令打开、启用、查询、禁用和关闭驱动程序。
打开一个程序的安装目录,在这里面可以看到一些dll的一些文件。如果在它的上面双击的话会在它的旁边提示:如果是想要查看它可以下载安装一个叫exescope的自定义应用软件的工具。
右边有一个更多,点击一下“更多”,可以看到它的默认安装路径,如果不需要更改的话,它就会默认的安装到c盘的程序文件夹中。
点击安装之后,在它d出的面板中有一个自动汉化的说明,我们点击“已阅”。接着在它的安装过程中会出现一个安装类型,可以根据需要选择一个安装类型,这里就选择它默认的“典型安装”,然后点击:下一步。当安装到汉化的安装目录的时候它会提示,如果是不想把它安装到默认位置的话,可以在点击浏览选择一个安装的文件位置。
Dell向运行于Windows *** 作系统下的程序提供代码、数据或函数。程序可根据DLL文件中的指令打开、启用、查询、禁用和关闭驱动程序。
打开一个程序的安装目录,在这里面可以看到一些dll的一些文件。如果在它的上面双击的话会在它的旁边提示:如果是想要查看它可以下载安装一个叫exescope的自定义应用软件的工具。
右边有一个更多,点击一下“更多”,可以看到它的默认安装路径,如果不需要更改的话,它就会默认的安装到c盘的程序文件夹中。
点击安装之后,在它d出的面板中有一个自动汉化的说明,我们点击“已阅”。接着在它的安装过程中会出现一个安装类型,可以根据需要选择一个安装类型,这里就选择它默认的“典型安装”,然后点击:下一步。当安装到汉化的安装目录的时候它会提示,如果是不想把它安装到默认位置的话,可以在点击浏览选择一个安装的文件位置。
使用C#生成dll文件并调用
一、创建dll文件:
例如生成一个md5编码判断状态的文件,即,输入一个字符串(string A)和一个32位md5编码(string B),判断此字符串A对应的32位md5编码是否与B相等,如果相等返回true,否则返回false。
打开VS 2005,“文件”--》“新建”--“项目”,选择“Windows 控件库”,命名后点击“确定”,在“UserControl1cs”中输入以下代码:
using System;
using SystemCollectionsGeneric;
using SystemComponentModel;
using SystemDrawing;
using SystemData;
using SystemWindowsForms;
using SystemText;
using SystemSecurityCryptography;
namespace md5
{
public partial class Program : UserControl
{
#region MD5 32位加密:GetMd5Str32
/// <summary>
/// 32位MD5加密
/// </summary>
/// <param name="strSource">待加密字串</param>
/// <returns>加密后的字串</returns>
public static string GetMd5Str32(string strSource)
{
byte[] bytes = EncodingASCIIGetBytes(strSource);
byte[] hashValue = ((SystemSecurityCryptographyHashAlgorithm)SystemSecurityCryptographyCryptoConfigCreateFromName("MD5"))ComputeHash(bytes);
StringBuilder sb = new StringBuilder();
for (int i = 0; i < 16; i++)
{
sbAppend(hashValue[i]ToString("x2"));
}
return sbToString()ToUpper();
}
#endregion
#region 核对md5编码是否一致:CheckMd5String()
/// <summary>
/// 核对md5编码是否一致
/// </summary>
/// <param name="ConvertString"></param>
/// <returns>如果一致返回true,否则返回false</returns>
///
public static bool CheckMd5String(string str1, string str2)
{
string md5String = str1; //需要验证的字符串
string md5DbString = str2; //需要核对的32位md5编码
int result = stringCompare(md5ProgramGetMd5Str32(str1), md5DbString, true);
if (result == 0)
{
return true;
}
else
{
return false;
}
}
#endregion
}
}
修改“UserControl1Designercs”中的命名空间为“md5”,方法为“Program”,即可生成dll文件。
在\bin\Debug文件假下,可以找到相应的dll文件。
二、部署dll流程:
首先把dll文件放到应用程序\bin\Debug\下;
然后在解决方案中添加引用:右键鼠标-->添加引用-->浏览-->选择dll放置路径后点击“确定”。
注意:要在应用文件头处使用using md5;命令。
测试应用程序代码,如下:Form1cs
using System;
using SystemCollectionsGeneric;
using SystemComponentModel;
using SystemData;
using SystemDrawing;
using SystemText;
using SystemWindowsForms;
using md5;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
string str1 = textBox1TextToString();
string md5String = textBox2TextToString();
textBox3Text = md5ProgramGetMd5Str32(str1);
textBox4Text = md5ProgramCheckMd5String(str1, md5String)ToString();
}
private void button2_Click(object sender, EventArgs e)
{
thisClose();
}
}
}
三、注意点:
1、在C#应用程序开发过程中,加载dll文件时,报错“未能加载文件或程序集“md5, Version=2000, Culture=neutral, PublicKeyToken=null”或它的某一个依赖项。系统找不到指定的文件。”,请指点一下是什么原因?
解决:这是因为加载dll的路径问题,正确加载方式为:在“解决方案”的“引用”文件上右击鼠标,选择“添加引用”---》在“浏览”选项卡中添加引用(注意:自己定义的dll文件不能在“NET”选项卡中添加。)
------------------------------------------------------------------------------------------------------------------
c#生成DLL文件,内部函数的问题
用C#编写一组处理XML文档的代码,由于要求生成DLL文件,并由外部的其他工具访问动态库中的文件,
但是用Dependency Walker检测我生成的这个DLL文件没有显示任何的函数,以前没做过这方面的东西,求教了
代码如下:
using System;
using SystemIO;
using SystemXml;
public class Sample
{
public static void Main()
{
DeleteArg();
}
static void DeleteArg()
{
XmlDocument doc = new XmlDocument();
docLoad(@"c:\\data1xml");
XmlNode root = docDocumentElement;
XmlNode Node1;
XmlNodeList nodeList = docSelectSingleNode("/Entity/Columns")ChildNodes;
foreach (XmlNode xn in nodeList)
{
XmlElement xe = (XmlElement)xn;
if (xeGetAttribute("Name") == "SysModuleID")
{
xeRemoveAll();
//xeRemoveAttribute("Name");//删除Name属性
}
}
docSave("c:\\data1xml");//保存这个文档到文件中
}
}
以上代码实现删除XML文件中某一节点的功能,如何在生成DLL后能够使用检测工具检测出DeleteArg函数,
使用Dependency Walker没检测出该函数是不是以为着这个动态库文件不能被调用
----
因为net的程序不是这样把函数放在导出表的, 我记得net做的dll只导出了一个_CorDllMain的方法,
所以用Dependency Walker是看不出来的 如果你想看net做的dll导出了什么内容,可以用反射查看元数据
----
生成这个DLL库文件,是想要别的工具运行这个动态库文件,实现DELETEARG()这个函数的功能
----
可以的
----
你上面的代码不是生成DLL的,而是一个控制台应用程序
要想创建动态库(DLL),在新建项目窗口中选择"类库", 默认的代码是这样的:
using System;
using SystemCollectionsGeneric;
using SystemText;
namespace ClassLibrary2
{
public class Class1
{
}
}
// 然后添加你的代码最后代码如下:
using System;
using SystemCollectionsGeneric;
using SystemText;
using SystemXml;
namespace ClassLibrary2
{
public class Class1
{
public void DeleteArg()
{
XmlDocument doc = new XmlDocument();
docLoad(@"c:\\data1xml");
XmlNode root = docDocumentElement;
XmlNode Node1;
XmlNodeList nodeList = docSelectSingleNode("/Entity/Columns")ChildNodes;
foreach (XmlNode xn in nodeList)
{
XmlElement xe = (XmlElement)xn;
if (xeGetAttribute("Name") == "SysModuleID")
{
xeRemoveAll();
//xeRemoveAttribute("Name");//删除Name属性
}
}
docSave("c:\\data1xml");//保存这个文档到文件中
}
}
}
最后编译一下就可以,
在Debug文件夹下回产生一个dll文件,最后在需要的工程里,将这个dll文件引进进去就可以用
1、首先在电脑端左下方选择开始按钮并点击,如下图所示。
2、点击之后d出菜单命令框,选择运行选项按钮,进行点击 *** 作。
3、然后在d出的运行框中输入cmd命令,如下图所示。
4、运行net start cryptsvc 命令,来获取帮助,启动服务。
5、接下来就可以注册dll文件,如下图所示。
6、相关的系统dll文件,也可直接在运行下注册。
进程文件: dllhost 或者 dllhostexe
进程名称: Microsoft DCOM DLL Host Process
描述:
dllhostexe是微软Windows *** 作系统的一部分。dllhostexe用于管理DLL应用。这个程序对你系统的正常运行是非常重要的。
dllhostexe是运行COM+的组件,即COM代理,运行Windows中的Web和FTP服务器必须有这个东西。
服务名称:IIS Adin
位置:C:\Windows\System32
大小dllhostexe 解释
dllhostexe是什么?
dllhostexe是运行COM+的组件,即COM代理,运行Windows中的Web和FTP服务器必须有这个东西。
什么时候会出现dllhostexe?
运行COM+组件程序的时候就会出现。例如江民KV2004
冲击波杀手又是怎么一回事?
冲击波杀手借用了dllhostexe作为进程名,但是由于Windows不允许同一个目录下有同名文件的存在,因此,冲击波杀手把病毒体:dllhostexe放到了C:\Windows\System32\Wins目录里面(Windows 2000是C:\WINNT\System32\Wins,全部假设系统安装在C盘),但是真正的dllhostexe应该放 在C:\Windows\System32(Windows 2000是C:\WINNT\System32)
换句话说就是:冲击波(WormWelChia)为了迷惑用户,避免病毒的执行体被进程管理器终止,采用了dllhostexe这个和Windows组件一样的名字,但是并不是说进程里面出现dllhostexe就等于感染了wormwelchia
再看看这里的FAQ吧
第一个误区————进程出现Dllhostexe就等于中了病毒
Dllhostexe是系统文件,但是进程里面出现Dllhostexe进程不等于中了病毒
第二个误区————一见Dllhostexe进程就杀死
其实这样做是不好的。很多程序都需要Dllhostexe,例如KV2004实时监控运行的时候或IIS在解析一些ASP文件 的时候,进程中都会出现Dllhostexe
之所以大家恐惧Dllhostexe进程,恐怕是由于冲击波(杀手)的问题。
其实冲击波(杀手)只不过采取了一个偷梁换柱的方法。因为任务管理器里面无法看出进程中exe文件的路径,所以让大家在分析问题 的时候出现一些偏差。
感染冲击波(杀手)的典型特征不是进程中出现Dllhostexe,而是RPC服务出现问题(冲击波)和System32\w ins目录里面出现svchostexe和dllhostexe文件(冲击波杀手)。注意路径!!
那么,Dllhostexe是什么呢?Dllhostexe是 COM+ 的主进程。正常下应该位于system32目录里面和system32\dllcache目录里面。而system32\win s目录里面是不会有dllhostexe文件的。:500 KB (5,120 字节)
不过在C:\Program Files\Microsoft Office\media\dllhostexe中 该文件为病毒,目前(2008年7月25号)瑞星查不出这个病毒,需要结束该进程然后删除~~
Dell向运行于Windows *** 作系统下的程序提供代码、数据或函数。程序可根据DLL文件中的指令打开、启用、查询、禁用和关闭驱动程序。
打开一个程序的安装目录,在这里面可以看到一些dll的一些文件。如果在它的上面双击的话会在它的旁边提示:如果是想要查看它可以下载安装一个叫exescope的自定义应用软件的工具。
右边有一个更多,点击一下“更多”,可以看到它的默认安装路径,如果不需要更改的话,它就会默认的安装到c盘的程序文件夹中。
点击安装之后,在它d出的面板中有一个自动汉化的说明,我们点击“已阅”。接着在它的安装过程中会出现一个安装类型,可以根据需要选择一个安装类型,这里就选择它默认的“典型安装”,然后点击:下一步。当安装到汉化的安装目录的时候它会提示,如果是不想把它安装到默认位置的话,可以在点击浏览选择一个安装的文件位置。
以上就是关于手机上dll文件怎么打开全部的内容,包括:手机上dll文件怎么打开、dll格式文件怎样打开、C# 中如何调用DLL文件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)