Открытие пути к файлу в C # - PullRequest
0 голосов
/ 09 сентября 2011

У меня проблемы с открытием чертежа в winform.Ошибка, которую я получаю, говорит, что NullReferenceException была необработанной и выделяет путь.любая помощь приветствуется.Спасибо

private void button2_Click(object sender, EventArgs e)
    {
        //Open Solidworks Drawing
        ModelDoc2 swModel = default(ModelDoc2);
        DocumentSpecification swDocSpecification = default(DocumentSpecification);
        string sName = null;
        long longstatus = 0;
        long longwarnings = 0;
        // Drawing document path and name         
        swDocSpecification = (DocumentSpecification)swApp.GetOpenDocSpec("C:\\location\\????.slddrw");//File Location
        sName = swDocSpecification.FileName;
        // Sheet name         
        swDocSpecification.SheetName = "BOM"; //Open to the BOM sheet
        swDocSpecification.DocumentType = (int)swDocumentTypes_e.swDocDRAWING;
        swDocSpecification.ReadOnly = true;
        swDocSpecification.Silent = false;
        // Open the specified sheet in the specified drawing document         
        swModel = swApp.OpenDoc7(swDocSpecification);
        longstatus = swDocSpecification.Error;
        longwarnings = swDocSpecification.Warning;
    }

Ответы [ 2 ]

2 голосов
/ 09 сентября 2011
System.Diagnostics.Process.Start("explorer.exe c:\\");

это может помочь

1 голос
/ 09 сентября 2011

Есть две возможности, почему вы получаете исключение NullReferenceException

  1. swApp имеет значение null и вызов всего, что включено GetOpenDocSpec не будет работать
  2. Что-то внутри GetOpenDocSpec написано не так, как предполагалось, и не выполняет правильную проверку. И поэтому его выбрасывает нулевое исключение

Должно быть достаточно просто проверить, что swApp == null, используя ваш отладчик. Использование авто или окна просмотра, наведение курсора на переменную,? SwApp == null из окна команд и т. Д.

...