簡體   English   中英

無法使用C#創建Activex對象

[英]can not create activex object using C#

我正在客戶端計算機上部署C#應用程序。 該應用程序需要訪問另一個程序的代碼,因此它可以從另一個應用程序的屏幕上抓取文本。 它在開發計算機上運行良好,但在客戶端計算機上拋出錯誤“ ActiveX組件無法創建對象”,這是我從中得到錯誤的地方!

    private ExtraSession objExtraSession;
    private ExtraSessions objExtraSessions;
    private ExtraScreen objExtraScreen;
    private ExtraArea objExtraArea;
    private ExtraSystem objExtraSystem;
    protected void sessionInitializer()
    {
        try
        {
            objExtraSystem = (ExtraSystem) Microsoft.VisualBasic.Interaction.CreateObject("Extra.system");

            if (objExtraSystem == null)
            {
                MessageBox.Show("Could not create system");
                return;
            }
            objExtraSessions = objExtraSystem.Sessions;

            if (objExtraSessions == null)
            {
                MessageBox.Show("Could not create sessions");
                return;
            }
            if (!System.IO.File.Exists("C:\\Users\\" + userid + "\\Documents\\Attachmate\\EXTRA!\\Sessions\\SAS.edp"))
            {
                MessageBox.Show("File does not exist");
                return;
            }

            objExtraSession = (ExtraSession) Microsoft.VisualBasic.Interaction.GetObject("C:\\Users\\"+ userid + "\\Documents\\Attachmate\\EXTRA!\\Sessions\\SAS.edp");

            if (objExtraSession == null)
            {
                MessageBox.Show("Could not create session");
                return;
            }

            if (objExtraSession.Visible == 0)
            {
                objExtraSession.Visible = 1;
            }

            objExtraScreen = objExtraSession.Screen;
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.StackTrace, "Failed to initialize Attachmate sessions");
        }
    }

從objExtraSession =(ExtraSession)Microsoft.VisualBasic.Interaction.GetObject(“ C:\\ Users \\” + userid +“ \\ Documents \\ Attachmate \\ EXTRA!\\ Sessions \\ SAS.edp”)生成錯誤;

我錯過了一些步驟嗎? 請幫幫我。 提前致謝。

最可能的解釋是您的開發計算機已安裝ActiveX控件,而客戶端計算機未安裝。 閱讀控件的部署文檔,並執行將其部署到客戶端計算機所需的操作。

感謝您的所有答復... GetObject方法正在創建一個未注冊其activex組件的對象...我通過找到相應的* .ocx文件並在該文件上調用Regsvr32來解決了此問題...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM