Skip to content
⌘ NSIS Forum Archive

use system::call and visual basic dll

5 posts

oliver007#

use system::call and visual basic dll

hi there,

this is my first here so hello all 🙂

I just started using nsis installer, wow ! that is really great !!!
I've been able to make quick and small installer !!! I've never seen tool so fine before !

anyway there is something I cannot resolve:
use system:call with one of my dll.

here is the code:

;Call Function in Dll
SetPluginUnload alwaysoff
System::Call '$PROGRAMFILES\ExcelTool\TestDll::LoadTool(t 'go')'
SetPluginUnload manual
System::Free 0

What I want is to call a function in my dll:
Public Function LoadTool(sCommand As String)
If sCommand = "go" Then MsgBox "Working!"
End Function

Any idea is welcome 🙂
Takhir#
You not described the problem in your post. May be

System::Call '$PROGRAMFILES\ExcelTool\TestDll::LoadTool(t "go")'
And did you checked TestDll entry point (for example using VS "Dependency Walker"? BTW, is it TestDll, TestDll.Dll or Test.Dlls?
oliver007#
hi takhi,

my dll name is TestDll.dll

the problem come from here for sure:
System::Call '$PROGRAMFILES\ExcelTool\TestDll::LoadTool(t "go")'

I'm looking for code about entry point in vb but cannot find any piece of code 🙁
Takhir#
Currently I have not VB installed, but in MS VS you probably can create new dll-type VB project, may be with simple project template. You can also search internet for VB code samples.
JasonFriday13#
I have tried (unsuccessfully) making a VB dll and there were only four exported functions that I didn't add. So now I only use c/c++ for my dlls.