C# 如何在使用C访问access DB之前远程打开Windows用户#

C# 如何在使用C访问access DB之前远程打开Windows用户#,c#,C#,我有两台电脑P1和P2。我的Access数据库数据库位于P2的F2文件夹中。F2是共享的,由于工作组名称相同,我可以在P1中看到它。我的C#应用程序正在P1中运行。我在connectionstring中使用模式share deny none,可以毫无问题地访问db。但每当我重新启动P2时,我必须通过点击\P2\F2进入网络位置和工作组计算机等来提供P1中P2窗口用户usr/pwd的登录信息,否则我在访问db时会在C#中被拒绝。 我的问题是: 有没有什么方法可以让我只打开P2(不登录到OS)就可以

我有两台电脑P1和P2。我的Access数据库数据库位于P2的F2文件夹中。F2是共享的,由于工作组名称相同,我可以在P1中看到它。我的C#应用程序正在P1中运行。我在connectionstring中使用模式share deny none,可以毫无问题地访问db。但每当我重新启动P2时,我必须通过点击\P2\F2进入网络位置和工作组计算机等来提供P1中P2窗口用户usr/pwd的登录信息,否则我在访问db时会在C#中被拒绝。 我的问题是: 有没有什么方法可以让我只打开P2(不登录到OS)就可以从P1访问db,而不用双击P1中的F2并提供usr/pwd。我可以提供P2窗口用户在P1中C#app连接字符串中的使用/pwd吗。 请导游。 谢谢大家,,
Saf

在PC1和PC2中创建一个用户名和密码相同的用户,并在此用户下方运行应用程序。这样,windows ntlm身份验证将自动在远程服务器上对您进行身份验证(windows通常总是尝试在远程服务器上使用当前原则进行身份验证)

如果没有此选项,则需要检查您是否通过
File.Exists
如果没有,则在远程共享上进行身份验证

您可以在以下内容中找到有关身份验证的信息。在卢克·奎纳的帖子中,你可以简单地做:

new NetworkConnection(@"\\server\read", readCredentials)

由于文件系统/操作系统发生这种情况,Access本身没有身份验证。并且访问仅基于文件。

您是否尝试在windows中将P2/F2永久添加为网络共享?这不是你的程序应该处理的事情。您可能想改用SQL Server,Access有点过时,而共享Access数据库并不是最好的开始。欢迎使用Stackoverflow。请阅读a。解决方案可能是使用实际的数据库服务器,而不是任何访问权限。事实上,我的PC P2太旧,无法运行SQL server。很抱歉我必须使用Access,但我不想每次从P1运行C#app时都从P1登录P2…除了SQL Server还有什么好主意吗?