类模块(.cls)怎么调用批处理文件 麻烦请教下各位,我现在有一个批处理文件需要执行,en1 = Shell(folder & "enc1.bat", 1)这个代码我如果是创建一个FRM,在FRM里面测试代码是可以运行的,但现在想把它转到写的另一个类模块中(.cls文件),然后把类文件生成DLL去运行,运行时会通不过,系统后台日志报错:无效的过程调用或参数,望请教,这是什么原因,应该怎么处理? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可能是运行时的进程当前路径问题.你如方便把那人bat设计为绝对路径的话就改一下.如不行的话,就要找怎么取当前dll所在目录的函数 这里不是路径的问题,路径现在已经设成绝对路径了。上面folder 为 “E:\1\”相同的代码在我新建的FRM里面去调用,是没问题的,但是放到CLS中却运行不起来,想知道是不是CLS文件中是不是不能这么地调用SHELL批处理? UPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUP 你说的CLS文件是运行在哪种工程中的,是"标准EXE工程"吗 恩运行在标准EXE工程下是可以的,但打成DDL后,作为插件放到其它地方去调用时就执行不成功了。“无效的过程调用或参数” 应该不是shell问题,最大的问题可能是你的dll编码有问题。 有可能像楼上说的原因,代码是没问题的,因为在FRM里面测试是正常的,放进类模块中去后,运行就有问题了,...请问应该怎么解决啊? 将比处理封装在类的方法中间调用。类模块中Private Const DBL_QUOT = """"Public Sub CallShell(sNewfolder As String) Shell "cmd.exe /c start " & DBL_QUOT & DBL_QUOT & " " & DBL_QUOT & sNewfolder & DBL_QUOTEnd Sub窗体模块中Private Sub Command1_Click() c.CallShell "D:\1.txt"End Sub 上面忘记申明变量了窗体模块中Private Sub Command1_Click() Dim c As Project1.Class1 Set c = New Class1 c.CallShell "D:\1.txt"End Sub 问题还是得不到解决,,用上面的方法,效果还是与之前直接调用SHELL同样的效果。。 如何获取MSHFlexGrid自身的滚动条的滚动动作? 求一个串口通信的例子 通过什么方法可以求出文件的大小啊? 求一语句 这个问题很简单,可是我不会 PrinterMessageBox怎么用? 为什么我的vb程序运行起来,感觉不是很流畅?高分! 有谁在用vsprinter控件7.0 可否交流一下 数据环境的问题,急~~ 寻找Data Environment Designer 的详细使用资料????!!!!!!! 利用VB提取网页中的链接 计算机毕业设计开发
Public Sub CallShell(sNewfolder As String)
Shell "cmd.exe /c start " & DBL_QUOT & DBL_QUOT & " " & DBL_QUOT & sNewfolder & DBL_QUOT
End Sub
窗体模块中
Private Sub Command1_Click() c.CallShell "D:\1.txt"End Sub
Private Sub Command1_Click() Dim c As Project1.Class1
Set c = New Class1
c.CallShell "D:\1.txt"End Sub