C# 如何获得WinForm和控制台程序的运行根目录?

C# 如何获得WinForm和控制台程序的运行根目录?,第1张

取得控制台应用程序的根目录方法 方法1、EnvironmentCurrentDirectory 取得或设置当前工作目录的完整限定路径

方法2、AppDomainCurrentDomainBaseDirectory 获取基目录,它由程序集冲突解决程序用来探测程序集

取得WinForm应用程序的根目录方法 1、EnvironmentCurrentDirectoryToString();//获取或设置当前工作目录的完全限定路径

2、ApplicationStartupPathToString();//获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称

3、DirectoryGetCurrentDirectory();//获取应用程序的当前工作目录

4、AppDomainCurrentDomainBaseDirectory;//获取基目录,它由程序集冲突解决程序用来探测程序集

5、AppDomainCurrentDomainSetupInformationApplicationBase;//获取或设置包含该应用程序的目录的名称

如果只是简单的想改变一下外观界面,推荐使用irisskin2,简单好用,只需要引入自己的工程就可以了,然然后制定一个皮肤风格,你的整个程序界面都会被改变。

如果想添加更多VS工具箱中不存在的空间时,你可以试试DotnetBar,不过这个软件是国外的共享软件,安装之后,将DLL拖放到工具箱中,会增加更多的比较美观的控件了。

如果希望自己定义风格的话就比较困难了,首先要会一点美工,然后学会C# GDI+,和怎么自己制作控件,稍显复杂。

如图,我做的例子。

调用第三方的DLL,需要将你的dll文件添加引用!(程序运行之后,dll文件会在你的项目文件夹的bin\debug\文件夹下)

然后在程序里面还要用代码引用一次!!

例如: [DllImport("win32dll")]

使用dllImport需要添加程序集using SystemRuntimeInteropServices;

下面是一个简单的例子:

public class ConnectNet

{

/// <summary>

/// 该类主要用于检测网络是否连通,调用系统自带的API函数wininetdll

/// 使用该dll内的InternetGetConnectedState方法

/// </summary>

/// <param name="connnectionDescription">方法参数一,表示网络连接状态</param>

/// <param name="reservedValue">方法参数2,保留参数</param>

/// <returns>state ,类型为Bool</returns>

[DllImport("wininetdll")]

private extern static bool InternetGetConnectedState(out int connnectionDescription, int reservedValue);

public bool IsConnected()

{

int i = 0;

bool state = InternetGetConnectedState(out i, 0);

return state;

}

}

你理解的不对,你在服务端设置了端口8880,就是说你的服务端在监听8880这个端口,换句话说就是8880这个端口被你当前的服务端占用了,如果你再开一个服务端也监听这个端口就会报错。至于你客户端有多少个连接了这个端口都没关系的。

你打开那个外部程序做什么。不知道你要完成什么功能,不好提供更可行的解决方案啊。

一般关机后系统的临时文件会被清空,看看能否从这个来解决,比如打开程序时在系统临时文件夹下面生成一个文件(如果已经有了的话就证明不是第一次调用);

开机自动启动程序,自动启动时给参数,其它时候用户运行程序不给参数;

先不写了,下班回家。

你所说的其他程序也是你编写的话,在其他程序中引用该winform程序所属的项目,这样就可以在其他程序中使用你这个winform程序的窗体类了,注意把你想共享的窗体类的访问级别设为public

WinForm是用C#语言编写。

2、WinForm是C/S模式(客户端模式)3、WebFrom是B/S模式(基于浏览器模式,由远程服务器提供信息)4、net是平台,是一个大类!这个大类下面有很多方法,即编程方式。(C#、VB、J#、F#)WinForm中就不用aspnet了用的就是C#语言。aspnet是基于B/S模式的,aspnet可以是C#可以是VB拆开来看就是ActiveServerPage@net,以前的asp是ActiveServerPage但它不是属于net平台下的

winform启动node程序:

1、通过内置Process方式打开程序。

2、通过win32,设置桌面鼠标位置,通过方法模拟鼠标双击事件。

3、shell32dll方法。

欢迎分享,转载请注明来源:表白网

原文地址:https://h5.hunlipic.com/biaobai/3859997.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2024-03-30
下一篇2024-03-30

发表评论

登录后才能评论

评论列表(0条)

    保存