十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
.NET 类库生成的 dll 只要在你的项目引用里添加对 dll 的引用即可。图中是调用普通 dll 的方法,那个 dll 通常是用 C++ 写的非托管库。
湘乡网站制作公司哪家好,找创新互联!从网页设计、网站建设、微信开发、APP开发、响应式网站开发等网站项目制作,到程序开发,运营维护。创新互联成立于2013年到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联。
VB.NET 里面会有一个main方法表示函数的入口
main方法的参数就是命令行传给它的
shutdown.exe能直接调用是因为你的环境变量有C盘的windows目录
你只要在你程序的输出目录(一般为bin)里面打开命令行输入程序名称.exe就可以直接执行你的窗体
如果你要调试输入命令的效果,你打开你项目的属性,找到调试里面的命令行参数,在里面输入测试参数就能在你main函数里面看到结果了
那如果你想打开任何命令行都可以执行你的窗体程序,那你把你程序的安装目录设置为环境变量,这样就可以直接执行这个命令了
DLL在生成后,里内的函数会有变化,所以你要先用软件exesc查一下它变化的结果是什么
之后这样写,我是用C#写的,对你应该有帮助
[DllImport("facecom.dll", EntryPoint = "?fnfacecom@@YAHXZ")]
public extern static int fnfacecom();
?fnfacecom@@YAHXZ
这个就是那个就是在软件里查到的改变后的结果,你写在入口号处就可以了
这个我用过了没问题
方法如下:
1、打开例1.1创建的工程。
2、选择窗体Form1并双击该窗体,出现窗体的调事件的过程代码体。
3、在窗体调用的过程代码体中编制如下过程代码:
Private Sub Form_Load()
Form1.Width = 4860
Form1.Height = 2520
End Sub
4、设置窗体Form1的SartUpPosition属性为2-屏幕中心,这样运行窗体可以发现,屏幕的大小与例1.6中通过属性设置的大小是一致的。
你这是在declare语句里忘了写alias子句了。。。
Private Declare Function LogonUser Lib "advapi32.dll" Alias "LogonUserA" (ByVal lpszUsername As String, ByVal lpszDomain As String, ByVal lpszPassword As String, ByVal dwLogonType As Integer, ByVal dwLogonProvider As Integer, ByRef phToken As IntPtr) As Boolean
还有你在vb里最好要也像C#一样,用dllimports特性而不是declare来引用api函数。需要引入
Imports System.Runtime.InteropServices
命名空间。用尖括号开头,如下:
DllImport("advapi32.dll")
Public Shared Function LogonUser(ByVal lpszUsername As String, ByVal lpszDomain As String, ByVal lpszPassword As String, ByVal dwLogonType As Integer, ByVal dwLogonProvider As Integer, ByRef phToken As IntPtr) As Boolean
End Function
当然你这里注意下logonUser函数的返回值只有在这个函数执行失败的时候才会返回false