小编Smi*_*ffy的帖子

Readonly连接字符串到访问数据库

我正在尝试使用System.Data.OleDb.OleDbConnection连接到Access数据库文件.我需要以只读模式连接,因为另一个应用程序同时使用它.我可以在读/写连接到数据库没有问题,但似乎无法找到任何正确的readonly字符串.

我试过了:

Provider = Microsoft.ACE.OLEDB.12.0;数据源= {0};持久安全信息=假;模式=读取

Provider = Microsoft.ACE.OLEDB.12.0; Data Source = {0}; Persist Security Info = False; Extended Properties ="ReadOnly = true;"

谢谢.

编辑:

(我应该在原始问题中提供更多信息.)

我可以在本地计算机上成功连接到访问数据库,但是当我尝试使用连接字符串连接到远程计算机上的访问数据库时

Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Persist Security Info=False;Mode=Read
Run Code Online (Sandbox Code Playgroud)

我会收到以下错误:

System.Data.OleDb.OleDbException (0x80004005): The Microsoft Office Access database engine cannot open or write to the file '{0}'. It is already opened exclusively by another user, or you need permission to view and write its data.
Run Code Online (Sandbox Code Playgroud)

我的应用程序在本地系统帐户下的Windows服务中运行.

oledb ms-access connection-string

11
推荐指数
1
解决办法
3万
查看次数

保存默认为选中的Wix复选框值到注册表

我有一个用Wix编写的安装程序.在UI向导中,有一个默认选中的复选框.我想使用Rob Mensching描述的"记住属性"模式(更简单的版本)将此复选框的值保存到注册表中以进行更改,修复和升级.

复选框实现:

<Control Id="httpsCheckBox" Type="CheckBox" CheckBoxValue="true" X="30" Y="119" Width="139" Height="17" Text="Enable HTTPS services" Property="ENABLEHTTPS" />
Run Code Online (Sandbox Code Playgroud)

属性定义:

    <Property Id="ENABLEHTTPS" value="true">
        <RegistrySearch Id="EnableHttpsRegistrySearch" Type="raw" Root="HKLM" Key="SOFTWARE\CompanyName\ProductName" Name="EnableHttps" />
    </Property>
Run Code Online (Sandbox Code Playgroud)

该属性将写入注册表:

    <Component Id="RegistryEntries">
        <RegistryKey Root="HKLM" Key="SOFTWARE\CompanyName\ProductName">
            <RegistryValue Name="EnableHttps" Value="[ENABLEHTTPS]" Type="string" />
        </RegistryKey>
    </Component>
Run Code Online (Sandbox Code Playgroud)

初始安装工作正常.如果选中该复选框,则注册表中的值为"true";如果未选中,则为空.

下次运行安装程序时,例如,要安装新功能,无论注册表设置中的值如何,都始终选中该复选框.

如果我从属性定义中删除默认值,以便在第一次运行安装程序时取消选中该复选框,则一切正常.下次运行安装程序时,复选框(和属性)具有来自注册表的正确值.

就像RegistrySearch在注册表值为空时不设置属性一样.

难道我做错了什么?或者有更好的方法吗?

registry checkbox wix

7
推荐指数
2
解决办法
3685
查看次数

WiX:如何检测 IIS 上安装了 URL Rewrite

我正在使用 WiX 3.10 创建用于安装 IIS(7.5 或更高版本)网站的 MSI。该网站需要 IIS 中的 URL 重写扩展。

有没有办法在WiX项目的启动条件下检测IIS中是否安装了URL Rewrite扩展?

iis windows-installer wix

1
推荐指数
1
解决办法
2280
查看次数