C#写的程序自启动,写在注册表的run下面,但是开机启动后提示找不到要加载的文件(我这个程序一开始要读一个xml文件初使化),好像这种方式启动目录被放到了document and Settings下面,直接点击运行没问题.这怎么办

解决方案 »

  1.   

    string fullpathfile=Application.ExecutablePath;
    Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run",true).SetValue("myapp",fullpathfile);代码是这样的,应该没有错,在注册表里也看到了,程序也启动了,就是读不到初使化文件,不知道怎么回事
      

  2.   

    你在程序中如果用的相对路径,那么用运行的方式/鼠标双击的方式/等等都能正确运行,而唯独放在注册表的run下启动运行时,所有的相对路径都会是错的,这时,你要调用的文件就会找不到.解决办法就是用绝对路径.
    即在你的程序中给所有的文件路径都加上string fullpathfile=Application.ExecutablePath;