永发信息网

在C#中的客户端编程中,我需要读取项目的一个文件的,该怎么读取?

答案:2  悬赏:70  手机版
解决时间 2021-02-09 01:57
C#的客户端程序有没有和ASP.NET网站程序一样,有一个像Server.MapPath("/Image/a.jpg")这个方法一样获取项目路径?
最佳答案
// 获取程序的基目录。
System.AppDomain.CurrentDomain.BaseDirectory

// 获取模块的完整路径。
System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName

// 获取和设置当前目录(该进程从中启动的目录)的完全限定目录。
System.Environment.CurrentDirectory

// 获取应用程序的当前工作目录。
System.IO.Directory.GetCurrentDirectory()

// 获取和设置包括该应用程序的目录的名称。
System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase

// 获取启动了应用程序的可执行文件的路径。
System.Windows.Forms.Application.StartupPath

// 获取启动了应用程序的可执行文件的路径及文件名
System.Windows.Forms.Application.ExecutablePath

看哪个适合你,选一个
全部回答
原来是双线程访问同一资源的问题,我理解错了:( 由于sockect本身是独占资源,并不支持双工(发送的时候不能接收,接受的时候不能发送)。所以我们需要为着两个线程进行排队,然后依次调度来进行访问。这里有三个角色,调度器,发送线程,接受线程 调度器: 负责按照指定的策略调度两个线程的访问,比如交替进行;记录状态,异常等信息。最基本的情况下,对外提供两个方法,如果支持异步的话还需要上面两方法的异步版和两个事件:void send(byte[] content),负责发送数据;byte[] recieve(),负责接收数据;event recievecomplete,表示接收完成;event sendcomplete表示发送完成。调度器把发送和接收请求分别放入队列,依次执行就可以了。这部分异步逻辑还是比较简单的,看楼主的技术水平应该可以搞定,我就不班门弄斧了。 发送线程: 调用调度器的send方法 接受线程: 调用调度器的recieve方法 简单的说,就是把并行操作变成串行,这样就不会有冲突发生了!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
伊春市公安分局这个地址在什么地方,我要处理
电动三轮车电机的36种接法是什么啊?求图!!
驿城区美的照明(驻马店)这个地址怎么能查询到
鹿晗到底参加17年央视春晚吗?之前不是有个新
南海烧鹅这个地址在什么地方,我要处理点事
怎样才能克服上台讲话情绪激动的问题 因为内
五洲鞋服超市陆埠店地址在哪,我要去那里办事
吐鲁番葡萄沟风景区停车场地址在哪,我要去那
【雅玛预言】2012年12月21日雅玛预言是什么—
请问天健牛毒清哪里有卖.
卫星小家电怎么去啊,有知道地址的么
后缀名为XX的文件如何打开
宝贝计划电影中的片尾曲叫什么名字?
冰冠冰川无限刷小怪
正泰德力西电器螺丝五金工具我想知道这个在什
推荐资讯
百变大咖秀为什么不播了
金苹果幼儿园(佳木斯向阳区)怎么去啊,我要去
急求英语学霸!!!八年级英语be going to be
关于回收物流与废弃物流特点的说法,正确的是
衣服袖口内侧有个窟窿是干什么用的,不是放大
下表为2000年和2010年四省市区域内来自外省的
泉城宾馆(泉城路)地址在哪,我要去那里办事
镁和氧化铝高温下能不能反应,生成氧化镁和铝
中国电信话吧(浍河路店)地址好找么,我有些事
精灵宝可梦日月…妙蛙种子,巢穴球…小火龙,
阅读材料,回答问题:“我们以这些殖民地人民
已知,如图:CD为RT△ABC斜边AB上的高,∠BAC的
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?