C# gui中的拨号错误

C# gui中的拨号错误,c#,.net,windows,winapi,ras,C#,.net,Windows,Winapi,Ras,我正在使用Rasdial.exe创建一个新的拨号连接,它在控制台模式下显示错误。有没有办法让错误出现在GUI上? windows如何将错误代码显示为用户界面 更新: 我使用了“Rasphone.exe”,它达到了我的预期效果。i、 它在用户界面而不是命令提示符中显示错误消息。但是,这是使用“RASPhone.exe”而不是“RASDial.exe”的正确方法吗?如果您真的想在拨号连接时控制用户界面的情况,我建议您查看CodePlex上的DotRas SDK using DotRas; RasH

我正在使用Rasdial.exe创建一个新的拨号连接,它在控制台模式下显示错误。有没有办法让错误出现在GUI上? windows如何将错误代码显示为用户界面

更新:


我使用了“Rasphone.exe”,它达到了我的预期效果。i、 它在用户界面而不是命令提示符中显示错误消息。但是,这是使用“RASPhone.exe”而不是“RASDial.exe”的正确方法吗?

如果您真的想在拨号连接时控制用户界面的情况,我建议您查看CodePlex上的DotRas SDK

using DotRas;

RasHandle handle = null;
using (RasDialer dialer = new RasDialer())
{
    dialer.StateChanged += (sender, e) => 
       {
           // Update your user interface.
       };
    dialer.EntryName = "Your Entry Here";
    dialer.PhoneBookPath = @"C:\YourPhoneBook.pbk";
    dialer.Credentials = new NetworkCredential("Some", "User");

    handle = dialer.DialAsync();
}
这将使您能够在连接状态发生更改时以任何方式更新用户界面,而无需将对控制台应用程序所做的更新路由到您的用户界面


这里有一个链接:

如果你真的想在拨号连接时控制用户界面发生了什么,我建议你看看CodePlex上的DotRas SDK

using DotRas;

RasHandle handle = null;
using (RasDialer dialer = new RasDialer())
{
    dialer.StateChanged += (sender, e) => 
       {
           // Update your user interface.
       };
    dialer.EntryName = "Your Entry Here";
    dialer.PhoneBookPath = @"C:\YourPhoneBook.pbk";
    dialer.Credentials = new NetworkCredential("Some", "User");

    handle = dialer.DialAsync();
}
这将使您能够在连接状态发生更改时以任何方式更新用户界面,而无需将对控制台应用程序所做的更新路由到您的用户界面


这里有一个链接:

为了确保,您是否在询问如何生成子进程、捕获其标准输出并将其回显到GUI?可能是通过使用丰富的底层API;你可以通过使用DotRas使你的生活更轻松:@AresAvatar是的,你是rit!如果我能得到手动连接时得到的实际错误消息,那就更好了。@user1317084:有关如何执行此操作的详细信息,请参阅。为了确保这一点,您是否询问如何生成子进程、捕获其标准输出并将其回显到GUI?可能是通过使用丰富的底层API;你可以通过使用DotRas使你的生活更轻松:@AresAvatar是的,你是rit!如果我手动连接时收到实际的错误消息,那就更好了。@user1317084:有关如何执行此操作的详细信息,请参阅。
在本例中,
dialsync()
调用后,
使用
是否会立即阻止
Dispose()
RasDialer
?除非
RasDialer
的实现非常奇怪,否则它应该保持一个disposed状态,永远不会调用
StateChanged
事件。在本例中,
使用
是否会在
dialsync()
调用之后立即阻止
RasDialer
?除非
RasDialer
实现得非常奇怪,否则它应该处于一种已处置状态,永远不会调用
StateChanged
事件。