2016年5月9日 星期一

C#的dll檔如何讓Foxpro 呼叫


    相信許多人維護舊有的系統,不得不牽就目前的系統環境,例如foxpro 已經維運了半世記了,無法相容於c#的技術,但c#保留其彈性,讓它可以被宣告成dll檔直接被foxpro直接呼叫,讓舊有的系統也能使用c#的功能,這是多酷的事情。

步驟一: 設定Visual Studio Tool 的環境

勾選 【讓組件成為COM-Visible(M)

勾選註冊COM Interop

步驟二: c# 的範例程式碼
namespace sample
{
    [ClassInterface(ClassInterfaceType.AutoDual)] //雖然不明白這行,但查詢文件都要加上此行
    [ProgId("sample.bt")]  //sample (專案的名稱) . bt(類別名稱
    public class bt
    {
        public string search_bt()
        {
            return "this is XXXXX search_bt";
        }
        public string search_bt2(string fl)
        {
            return fl;
        }
        public string search_bt3()
        {
            return "the new function";
        }
    }
}

步驟三:foxpro的範例程式

步驟四: 註冊c#dll元件

到指定Framework的目錄下,用regasm 路徑/檔名.dll


執行結果:

沒有留言:

張貼留言