sreeja mekapati Ответов: 2

Я скопировал свой существующий exe - файл, чтобы изменить конфигурационный файл, так как мне нужен другой exe-файл для другой задачи. Дает мне ниже ошибка. Плз помогите


See the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box.

 

************** Exception Text **************
System.ArgumentException: The path is not of a legal form.
   at System.IO.Path.LegacyNormalizePath(String path, Boolean fullCheck, Int32 maxPathLength, Boolean expandShortPaths)
   at System.IO.Path.NormalizePath(String path, Boolean fullCheck, Int32 maxPathLength, Boolean expandShortPaths)
   at System.IO.Path.GetFullPathInternal(String path)
   at System.IO.File.InternalDelete(String path, Boolean checkHost)
   at System.IO.File.Delete(String path)
   at WebFTS_AMZDCMOB204.Form1.Form1_Load(Object sender, EventArgs e)
   at System.Windows.Forms.Form.OnLoad(EventArgs e)
   at System.Windows.Forms.Form.OnCreateControl()
   at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   at System.Windows.Forms.Control.CreateControl()
   at System.Windows.Forms.Control.WmShowWindow(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.Form.WmShowWindow(Message& m)
   at System.Windows.Forms.Form.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

 


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4180.0 built by: NET48REL1LAST_B
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
WebFTS_AMZDCMOB204
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file://10.10.19.243/Customers/AmazonDCM/AMZDCMOB204_EmptyLeg_CCXP/WebFTS_AMZDCMOB204_CCXP.exe
----------------------------------------
System.Windows.Forms
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4150.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4001.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.3761.0 built by: NET48REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4190.0 built by: NET48REL1LAST_B
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Core
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4180.0 built by: NET48REL1LAST_B
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.3761.0 built by: NET48REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------

 

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

 

For example:

 

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

 

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.


Что я уже пробовал:

Я пытался, но не могу отладить. плз помогите

Richard MacCutchan

Какие изменения вы внесли? Может, ты что-то неправильно написала.

CHill60

Почему вы не можете отладить?

2 Ответов

Рейтинг:
1

OriginalGriff

Посмотрите на сообщение об ошибке:

The path is not of a legal form.

Это означает, что любая строка пути, которую вы передаете в файл.Delete не содержит правильно сформированного пути к файлу. Он может быть пустым, oit может быть просто недействительным - мы не знаем и не можем, потому что у нас нет вашего кода, и мы не могли бы запустить его при тех же обстоятельствах, что и вы, если бы мы это сделали.

Так что все будет зависеть от тебя.
К счастью, у вас есть инструмент, который поможет вам выяснить, что происходит: отладчик. Если вы не знаете, как его использовать, то быстрый Google для "Visual Studio debugger" должен дать вам необходимую информацию.

Поместите точку останова в первую строку функции и запустите код через отладчик. Затем посмотрите на свой код и на свои данные и определите, что должно произойти вручную. Затем по одному шагу в каждой строке проверяйте, что то, что вы ожидали, произойдет именно так, как и произошло. Когда это не так, тогда у вас есть проблема, и вы можете вернуться назад (или запустить ее снова и посмотреть более внимательно), чтобы выяснить, почему.
Внимательно посмотрите на путь к файлу eth, который вы пытаетесь удалить, и работайте оттуда.

Извините, но мы не можем сделать это за вас - пришло время вам освоить новый (и очень, очень полезный) навык: отладку!


Рейтинг:
1

Sandeep Mewara

Цитата:
Система.ArgumentException: путь не имеет юридической формы.

Возможно, пустой путь, недопустимый путь или Путь содержит недопустимые символы.
ArgumentException in Delete

path is a zero-length string, contains only white space, or contains one or more invalid characters as defined by InvalidPathChars

Ссылка: Файл.Метод Delete(String) (System.IO) | Microsoft Docs[^]

Вы можете использовать: Путь.Метод GetInvalidPathChars (System.IO) | Microsoft Docs[^] чтобы увидеть, есть ли в пути недопустимые символы.


Цитата:
Я пытался, но не могу отладить. плз помогите

Вы поделились, что скопировали exe-файл, а затем столкнулись с этой проблемой. Теперь, если у вас есть кодовая база в другой системе, вы можете прикрепить к ней свой exe-файл. Вам нужно убедиться, что PDB-файлы также находятся там вместе с exe-файлом. Ссылаться: Присоединение к запущенным процессам с помощью отладчика - Visual Studio | Microsoft Docs[^]

Если у вас нет кодовой базы, вы можете попробовать удаленную отладку: Удаленная отладка проекта C# или VB - Visual Studio | Microsoft Docs[^]