程序所在根目录下,有sqlite自动引用的组件的x64 x86文件夹
打开后组件都是一样的
现在的问题是,我设置一段代码检测程序根目录下是否存在某个文件,在64位操作系统一切正常,到了32位系统,提示是X86文件夹下找不到相关的文件……
如下代码所示:
FileInfo file1 = new FileInfo(Application.StartupPath + @"\1.txt"); //如果根目录下没有1.txt则直接执行主程序
if (!file1.Exists)
{
System.Diagnostics.Process.Start(Application.StartupPath + @"\main.exe");
Environment.Exit(0);
return;
}else{//如果有
……
}
上面的代码在64位系统完全正常,但是到了32位系统,提示X86下没有1.txt的错误提示
8 个解决方案
#1
如果代码错误,为啥64位操作系统一切正常呢……确实小白不懂这个……
#2
看到论坛里面版主回复别人的,这个可以吗:
#3
#4
http://blog.achao.cc/16.html 看我手机的文章
string path = "Data Source =" + System.Windows.Forms.Application.StartupPath + "/all.db;Pooling=true;FailIfMissing=false"; 这是我常用的。32 64 win7 xp都是正常使用的。
上面的博客地址还有其他的方法,看看有没有合适你的
string path = "Data Source =" + System.Windows.Forms.Application.StartupPath + "/all.db;Pooling=true;FailIfMissing=false"; 这是我常用的。32 64 win7 xp都是正常使用的。
上面的博客地址还有其他的方法,看看有没有合适你的
#5
哈哈,正要回答,看到已经引用了
#6
Application.StartupPath 这个是程序启动路径,在资管管理器里双击,使用的是程序路径,但是别的场合就不一定了。
#7
对啊,你不要用Application.StartupPath,还有其他四五种获得启动目录的方法可替代。
还有,你的判断代码应该是在连接sqlite之后了,你试试把获取Application.StartupPath的代码放在sqlite连接数据库之前,也应该能避免问题。
还有,你的判断代码应该是在连接sqlite之后了,你试试把获取Application.StartupPath的代码放在sqlite连接数据库之前,也应该能避免问题。
#8
感谢各位,版主的方法的对的,忘记结贴了,散分
#1
如果代码错误,为啥64位操作系统一切正常呢……确实小白不懂这个……
#2
看到论坛里面版主回复别人的,这个可以吗:
#3
#4
http://blog.achao.cc/16.html 看我手机的文章
string path = "Data Source =" + System.Windows.Forms.Application.StartupPath + "/all.db;Pooling=true;FailIfMissing=false"; 这是我常用的。32 64 win7 xp都是正常使用的。
上面的博客地址还有其他的方法,看看有没有合适你的
string path = "Data Source =" + System.Windows.Forms.Application.StartupPath + "/all.db;Pooling=true;FailIfMissing=false"; 这是我常用的。32 64 win7 xp都是正常使用的。
上面的博客地址还有其他的方法,看看有没有合适你的
#5
哈哈,正要回答,看到已经引用了
#6
Application.StartupPath 这个是程序启动路径,在资管管理器里双击,使用的是程序路径,但是别的场合就不一定了。
#7
对啊,你不要用Application.StartupPath,还有其他四五种获得启动目录的方法可替代。
还有,你的判断代码应该是在连接sqlite之后了,你试试把获取Application.StartupPath的代码放在sqlite连接数据库之前,也应该能避免问题。
还有,你的判断代码应该是在连接sqlite之后了,你试试把获取Application.StartupPath的代码放在sqlite连接数据库之前,也应该能避免问题。
#8
感谢各位,版主的方法的对的,忘记结贴了,散分