2014-01-15 54 views
1

你好,我已經提到this article該代碼工程很好,我能夠返回文中所示的值。這是一個dll程序集,我通過javascript調用。是否可以將參數傳遞給程序集dll?

但是,我想將參數傳遞到接口並將它們拉入類中。

我已經修改了本文中的代碼嘗試FOLL代碼: -

public interface ASignatures 
{ 
    void showMsg(string val); 
} 
    [ClassInterface(ClassInterfaceType.AutoDual)] 
public class AClass :ASignatures 
{ 
    public showMsg(string val) 
    { 
     MessageBox.Show(val); 
    } 

上面的代碼不執行,我看不出錯誤,因爲我通過在瀏覽器中的JavaScript調用它。請你能告訴我,如果這是可能的,如果是的話,那麼我做錯了嗎?

我必須使用GET或SET之類的東西嗎?只要猜..

更新1 如果我把消息框,然後它們會顯示只有當我DONOT有一個參數化的功能。例:我把文章中提供的,它可以將代碼的MessageBox.show出現。例如:下面的作品,並顯示消息框: -

using System; 
using System.Runtime.InteropServices; 
namespace ANamespace 
{ 

    public interface ASignatures 
    { 
    string FName(); 
    string SName(); 
    int Age { get;} 
    } 

    [ClassInterface(ClassInterfaceType.AutoDual)] 
    public class AClass :ASignatures 
    { 
    public string FName() 
    { 
MessageBox.Show("TEST THIS WORKS"); 
     return "Imran"; 
    } 
    public string SName() 
    { 
     return "Nathani"; 
    } 
    public int Age 
    { 
     get { return 24; } 
    } 
    } 
} 

但是,現在,我想通過使用參數此DLL: -

<script language="javascript"> 
    var x = new ActiveXObject("ANamespace.AClass"); 

    x.CallApp(PassSomeValueForExampleQueryString); //instead of x.CallApp() 

    </script> 

它的工作,我不得不做CONTROL + F5!

+0

您需要了解Web應用程序和桌面應用程序之間的區別,以及客戶端和服務器端的含義 – MikeSW

+0

@MikeSW和Aristos,如果編輯上述文章中的代碼,我可以打開消息框。沒有輸出,只有當我使用參數化函數..所以我想我會問在這個論壇。 – variable

+0

哦,它運作良好,必須做CONTROL + F5! :) – variable

回答

1

該解決方案是完美的,因爲它!它的工作,我只需要做一個控制+ F5瀏覽器刷新!

相關問題