« April 2008 | Main | June 2008 »

May 28, 2008

VS2008でPostgreSQL

VS2008でpostgreSQLに接続するアプリを開発してみる(備忘録:解らないことだらけの為とんでも無い間違いをしている可能性あり)

サーバ(Windows2000上のcygwin上のpostgreSQL7.3.2)
クライアント(XP VS2008)

(1.まずはクライアントからサーバに接続する)
最初は・・・
$ FATAL: No pg_hba.conf entry for host 192.168.1.11, user admin, database MORIM
C:\cygwin\usr\local\pgsql\data\pg_hba.confをメモ帳で開き一番最後に
host all all 192.168.1.0 255.255.255.0 trust
を追加する
cygwinコンソールでpostgreSQLを再起動
$ pg_ctl stop
($ ipc-daemon &)
$ pg_ctl start -o -i
CSEで接続した所接続できた

(2.Npgsql.dllを手に入れる)
Postgre用の.NET providerらしい
ここ から
Npgsql1.0.1-bin-ms2.0.zip をダウンロードして解答し中身を D:\VB2008\DLLフォルダにコピー

(3.プロジェクトを作る)
PGSQL1というWindowsプロジェクトを作成し参照の追加から2でコピーした Npgsql.dllを参照する
Form1上にButton1を作り

Imports System.Data
Imports Npgsql
Public Class Form1
Private cn As NpgsqlConnection
Private cnString As String


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
cn = New NpgsqlConnection("Server=192.168.1.1; Port=5432; User Id=admin; Database=MORIM;")
Try
cn.Open()
MessageBox.Show("OPEN")
Catch ex As Exception
MessageBox.Show(ex.ToString)
End Try
End Sub
End Class

記述する
デバッグモードで実行、ボタンを押すと
「FileNotFoundException」のエラーが発生する
どうやらMono.Security.dllが無いことが原因らしい
SRCファイルをダウンロードしてlibフォルダに入っている「Mono.Security.dll」を 2のフォルダにコピーする
参照定義をして再度実行すると接続できた

| | Comments (6165) | TrackBack (0)

May 16, 2008

Windows Server 2003 または Windows XP に、サイズが大きな Windows インストーラ パッケージまたは Windows インストーラの修正プログラム パッケージをインストールしようとすると、エラー メッセージ "エラー 1718: ファイルはデジタル署名ポリシーによって拒否されました" が表示される

リンク: Windows Server 2003 または Windows XP に、サイズが大きな Windows インストーラ パッケージまたは Windows インストーラの修正プログラム パッケージをインストールしようとすると、エラー メッセージ "エラー 1718: ファイルはデジタル署名ポリシーによって拒否されました" が表示される.

| | Comments (989) | TrackBack (0)

« April 2008 | Main | June 2008 »