PDA

View Full Version : FrameFilterPath problem



MikeG
February 27, 2007, 15:45:33
I've written and compiled a filter to be used with a VB project, but I'm having a problem accessing it.

I copied the .ftf file into the application's folder, and called FrameFilterPath to point to that folder:

icimagingctrl.FrameFilterPath = App.Path

I then use

Set Filter = icimagingctrl.FrameFilterCreateString("myfilter", "myfilters.ftf")

to get a FrameFilter, but this returns an error (invalid procedure call or argument).

Also, if I use FrameFilterInfos to look at the available filters, it returns all the sample filters and std filters, but not mine.

I think I must be leaving out some sort of registration step, but I don't know what it is. Any ideas?

Thanks,

Mike Green

Stefan Geissler
February 27, 2007, 16:52:33
Hi Mike,

Please pass an empty string to the second parameter of FrameFilterCreateString() :

Set Filter = icimagingctrl.FrameFilterCreateString("myfilter", "")

Then your filter will be loaded correctly, if it resides in the aplication's path or the "common files\ic imaging control 3" directory.

There is a small error with the second parameter of FrameFilterCreateString().

MikeG
February 28, 2007, 17:48:43
I tried what you recommended, but it didn't make any difference. I think the problem is that ICImagingControl isn't recognizing the filters in the filter module. To support this, I first renamed the stdfilters.ftf and demofilters.ftf files, and they were still recognized by .FrameFilterInfos. Then I recompiled demofilters (using Visual Studio 2005) and copied the new demofilters.ftf into c:\program files\common files\ic imaging control 3, and the filters were no longer recognized by .FrameFilterInfos.

Thanks for your help.

Mike Green

Stefan Geissler
March 1, 2007, 10:59:42
Hi Mike,

IC Imaging Control searches at its start all *.FTF files that resides in the application's path or in the "common files\IC Imaging Control3" directory. If you would debug and have a look on the "FrameFilterInfos" collection, you would see, which filters are already loaded.

I you would have written your filter in C++, then please make sure, that you use the release version of the filter, because the debug version uses the "TIS_UDSHL07_vc71d.dll" (not "TIS_UDSHL07_vc71.dll"). The debug version does not reside in the mentioned pathes, thus loading of the filter failes. Unfortunatelly you get no error messages about failed filter loading. Sorry for this.

If you have used Visual Studio C++ 2005, then please copy the file "TIS_UDSHL07_vc.dll" into the directories mentioned above, because your filter needs this DLL.

Please let me know, whether these hints help.

MikeG
March 2, 2007, 16:05:48
I can't find TIS_UDSHL07_vc.dll anywhere.

Stefan Geissler
March 2, 2007, 16:23:33
Mike,

Which C++ version do you use? What IC Imaging Control components did you install?
Also you may have a look into the classlib\release directory of the IC Imaging Control installation path.

MikeG
March 3, 2007, 05:31:39
Stefan,

I'm using Visual C++ 2005, and I've installed IC Imaging Control components for VB 6.0 and VC++ 6.0.

Then I reinstalled and added the component for VC++ 2005 NET, but I still can't find the file you described.

Regards,

Mike

Stefan Geissler
March 5, 2007, 08:11:48
Hi Mike,

I case of using VC++ 6.0 you need the file TIS_DUSDHL07_VC6.DLL to be copied to your filter.

MikeG
March 5, 2007, 16:32:43
Stefan,

I assume you meant TIS_UDSHL07_VC6.dll, since that seems to work.

Thanks very much for your help.

Mike

Stefan Geissler
March 5, 2007, 16:36:38
Mike,

Sorry for the typo. I guess, I was too fast in writing :-)