Silverfrost Forums

Welcome to our forums

COM Interface

25 Jun 2006 12:38 #786

I'am converting projects form CVF ==> FTN95. Some of my Programs use a COM Interface to share data with other (commercial) programs. CVF had a set of libs and module which made COM possible. (Like the Module Wizzard) Is it possible to use COM Interfaces with FTN95 ? Klaus

25 Jun 2006 11:46 #787

Klaus

The short answer to your question is no, there are no FTN95 libaries or modules to facilitate COM interfaces from FTN95.

However, in principle, from FTN95 you do have access to all of the Windows API, either directly from FTN95 or via your own functions written in C/C++ and compiled with the Salford C++ compiler SCC.

Other readers of this forum may be able to suggest third party libraries to help you with this task. It is possible that you may even be able to use the CVF library with FTN95.

26 Jun 2006 1:14 #788

Paul

I'am good in standard fortran programming, but not in this GUI and API stuff. Therefor I need help or third party tools.

I was trying to compile a source code (module) that came with CVF using FTN. But I get many compiler errors. Maybe I need to set some copiler options.

Here is a little pice of this code :

** [small] !DEC$ IF DEFINED( _M_IA64) integer, parameter :: WINVER = #0500 !DEC$ ENDIF integer, parameter :: STRICT = 1 integer, parameter :: MAX_PATH = 260 integer(LPVOID), parameter :: NULL = 0 integer, parameter :: FALSE = 0 integer, parameter :: TRUE = 1 integer, parameter :: ANYSIZE_ARRAY = 1 !DEC$ IF DEFINED( _M_IA64) integer, parameter :: MAX_NATURAL_ALIGNMENT = 8 ! sizeof(ULONGLONG) !DEC$ ENDIF !DEC$ IF DEFINED( _M_IX86) integer, parameter :: MAX_NATURAL_ALIGNMENT = 4 ! sizeof(DWORD) integer, parameter :: NOP_FUNCTION = 0 !DEC$ ENDIF integer, parameter :: APPLICATION_ERROR_MASK = #20000000 integer, parameter :: ERROR_SEVERITY_SUCCESS = #00000000 integer, parameter :: ERROR_SEVERITY_INFORMATIONAL = #40000000 integer, parameter :: ERROR_SEVERITY_WARNING = #80000000 integer, parameter :: ERROR_SEVERITY_ERROR = #C0000000 !DEC$ IF DEFINED( _M_IA64) integer(DWORD64), parameter :: MAXLONGLONG = (#7fffffffffffffff) !DEC$ ENDIF [/small] **

Many error like :

error 174 - Unexpected '#' in expression

Is it basically possible to compile tis code using FTN ?

Klaus

26 Jun 2006 5:27 #791

Klaus

This line of approach may eventually bear fruit but it will be a long process. I do not think that we can offer much help via the forum.

However, the immediate problems are

  1. FTN95 does not recognise the DEC comment embedded directives !DEC$ etc

  2. FTN95 uses Z'0500' in place of #0500 etc.

26 Jun 2006 5:57 #793

Paul

I think I will stop trying to go this way. I will try to use mixed programming (using C# and FTN). Hopefully FTN will support .NET 2005 soon, because this is what we use for C#

Thanks again for your help Klaus

Please login to reply.