C#编写dll文件?

君子之交淡如水 2012-07-23 01:41:43
powerbuilder要想调用C#编写的dll文件,dll文件必须进行注册,而当此程序移动其他电脑上时,又要重新注册此dll文件,程序才能运行。而如果要在很多电脑上用这个程序的话,每台电脑都要注册,太繁琐了,有没有什么方法可以解决这个问题?
...全文
193 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
头疼,不会打包PB啊
[Quote=引用 17 楼 的回复:]

当然是PB程序啊,dll只是依赖项,一起打包安装就行了
引用 4 楼 的回复:
要是打包的话,是打包C#编写dll文件的这个程序,还是PB这个程序呢

引用 1 楼 的回复:

必须的,你做成安装程序,安装时自动注册
[/Quote]
c2606050113 2012-07-23
  • 打赏
  • 举报
回复
当然是PB程序啊,dll只是依赖项,一起打包安装就行了
[Quote=引用 4 楼 的回复:]
要是打包的话,是打包C#编写dll文件的这个程序,还是PB这个程序呢

引用 1 楼 的回复:

必须的,你做成安装程序,安装时自动注册
[/Quote]
  • 打赏
  • 举报
回复
谢谢你的回答
[Quote=引用 8 楼 的回复:]

批处理来了
@echo off
color a
for /f %%i in ('你要注册的DLL文件目录'\*.dll') do echo 正在注册%%i,请稍候... & regsvr32

/s "你要注册的DLL文件目录\%%i" & cls
echo 注册完成,按任意键退出...
pause>nul
exit
[/Quote]
  • 打赏
  • 举报
回复
嗯,谢谢你的回答
[Quote=引用 13 楼 的回复:]

建用VS做一个安装文件,在安装时自动注册,包含需要的。NET版本,这样还不需要你去考虑是否有。NET的问题


.net的DLL文件其它是COM组件,注册是不是使用regsvr32命令,使用的是Regasm命令,在C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727目录下(同理推其它版本的路径)
[/Quote]
  • 打赏
  • 举报
回复
是的,但是一个程序要在很多台电脑上运行,都要注册,都要运行这个命令太繁琐了,我要做的就是怎么
不那么繁琐的注册dll文件
[Quote=引用 10 楼 的回复:]

不知道你要干什么 不过 regsvr32 xxx.dll 这样可以注册dll文件
[/Quote]
meerio 2012-07-23
  • 打赏
  • 举报
回复
建用VS做一个安装文件,在安装时自动注册,包含需要的。NET版本,这样还不需要你去考虑是否有。NET的问题


.net的DLL文件其它是COM组件,注册是不是使用regsvr32命令,使用的是Regasm命令,在C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727目录下(同理推其它版本的路径)
rczjp 2012-07-23
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

请问批处理文件该怎样写
引用 2 楼 的回复:

每台电脑都要注册的。
如果有很多dll都要注册,可以写成一个批处理文件,直接运行批处理文件就可以了。
[/Quote]批处理就是把很多指令放在一起而已呵呵。
蝶恋花雨 2012-07-23
  • 打赏
  • 举报
回复
也可以在一个bat里面
regsvr32 /s setupwbv.dll
regsvr32 /s wininet.dll 一个一个往下写。
wy811007 2012-07-23
  • 打赏
  • 举报
回复
不知道你要干什么 不过 regsvr32 xxx.dll 这样可以注册dll文件
蝶恋花雨 2012-07-23
  • 打赏
  • 举报
回复
cmd /c for %i in (%windir%\system32\*.dll) do regsvr32.exe /s %i
cmd /c for %i in (%windir%\system32\*.ocx) do regsvr32.exe /s %i
用这个命令也行
蝶恋花雨 2012-07-23
  • 打赏
  • 举报
回复
批处理来了
@echo off
color a
for /f %%i in ('你要注册的DLL文件目录'\*.dll') do echo 正在注册%%i,请稍候... & regsvr32

/s "你要注册的DLL文件目录\%%i" & cls
echo 注册完成,按任意键退出...
pause>nul
exit
wisdom1 2012-07-23
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
请问批处理文件该怎样写

引用 2 楼 的回复:

每台电脑都要注册的。
如果有很多dll都要注册,可以写成一个批处理文件,直接运行批处理文件就可以了。
[/Quote]

VBS 自己学习下
  • 打赏
  • 举报
回复
额,这么简单啊,能讲一下这个文件运行的机制什么的吗?
如果需要注册的电脑上没有Net FrameWork环境的话,是否
能注册成功。
[Quote=引用 5 楼 的回复:]

建立一个bat格式的文件,把每个dll的注册语句写进去就可以了。
[/Quote]
mizuho_2006 2012-07-23
  • 打赏
  • 举报
回复
建立一个bat格式的文件,把每个dll的注册语句写进去就可以了。
  • 打赏
  • 举报
回复
要是打包的话,是打包C#编写dll文件的这个程序,还是PB这个程序呢
[Quote=引用 1 楼 的回复:]

必须的,你做成安装程序,安装时自动注册
[/Quote]
  • 打赏
  • 举报
回复
请问批处理文件该怎样写
[Quote=引用 2 楼 的回复:]

每台电脑都要注册的。
如果有很多dll都要注册,可以写成一个批处理文件,直接运行批处理文件就可以了。
[/Quote]
mizuho_2006 2012-07-23
  • 打赏
  • 举报
回复
每台电脑都要注册的。
如果有很多dll都要注册,可以写成一个批处理文件,直接运行批处理文件就可以了。
bdmh 2012-07-23
  • 打赏
  • 举报
回复
必须的,你做成安装程序,安装时自动注册

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧