佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

楼主: 雨吟

[Vb.net] #CRYSTAL REPORT LOGON FAIL WITH PASSWORD PROTECTED ACCESS DATABASE

[复制链接]
 楼主| 发表于 18-11-2005 08:00 AM | 显示全部楼层

DSN 还是 network path?

原帖由 goatstudio 于 14-11-2005 02:17 PM 发表


Network 方面其实很简单, 只要各电脑可以在 network 里看到对方就可以了.
你可以把资料库放在一个中央电脑上, 然后每台的 client 就用 oledb 来 point 去那资料库咯, 你可以用 map drive, 也可以直接指向那台 ...


我MAP Drive 后做了DSN,跑的时候,出一个error--

could not find installable ISAM

点解?

但是,如果我直接放那个networkpath,又没有问题,可以跑.....

我是不是应该直接给path?还是DSN比较好? crystal report的path 要怎样refer?

[ 本帖最后由 雨吟 于 18-11-2005 03:36 PM 编辑 ]
回复

使用道具 举报


ADVERTISEMENT

发表于 18-11-2005 08:33 AM | 显示全部楼层
我的搞定了... RESTART 机后竟然可以... 有时真是的....#@@%$@^@%$

我MAP DRIVE 后..POINT 到那里就可以了
回复

使用道具 举报

 楼主| 发表于 18-11-2005 09:30 AM | 显示全部楼层
原帖由 雨吟 于 18-11-2005 08:00 AM 发表


我MAP Drive 后做了DSN,跑的时候,出一个error--

could not find installable ISAM

点解?

但是,如果我直接放那个networkpath,又没有问题,可以跑.....

我是不是应该直接给path?还是DSN比较好?


我的connection String --

Public con As String = "Provider=Microsoft.Jet.OLEDB.4.0;DSN=CRPS;"

Public conCRPS As New OleDbConnection(con)
回复

使用道具 举报

发表于 18-11-2005 05:58 PM | 显示全部楼层
原帖由 雨吟 于 18-11-2005 08:00 AM 发表


我MAP Drive 后做了DSN,跑的时候,出一个error--

could not find installable ISAM

点解?

但是,如果我直接放那个networkpath,又没有问题,可以跑.....

我是不是应该直接给path?还是DSN比较好? crys ...


ISAM 的问题的话, 可以尝试升级你的 MDAC.
如果可以用 network drive 的话, 就直接用 network drive, map drive 只是方便.
如果可以的话, 应该尽量用 OleDB.
回复

使用道具 举报

 楼主| 发表于 18-11-2005 10:21 PM | 显示全部楼层
原帖由 goatstudio 于 18-11-2005 05:58 PM 发表


ISAM 的问题的话, 可以尝试升级你的 MDAC.
如果可以用 network drive 的话, 就直接用 network drive, map drive 只是方便.
如果可以的话, 应该尽量用 OleDB.


嗯。。我现在在用oledb...

问题是,map drive 我就必须 hardcode 他的 path了。。。。

这样子,user有什么要改我就要去帮他setup过了。。。。。

有什么办法可以flexibie & 方便user的?
回复

使用道具 举报

发表于 19-11-2005 03:19 PM | 显示全部楼层
原帖由 雨吟 于 18-11-2005 10:21 PM 发表


嗯。。我现在在用oledb...

问题是,map drive 我就必须 hardcode 他的 path了。。。。

这样子,user有什么要改我就要去帮他setup过了。。。。。:(

有什么办法可以flexibie & 方便user的?



我常用的方法是 xml 文件. 例如说你先制作一个跟机的 xml, 叫着 config.xml

<appconfig>
  <dbconn>xxxxx</dbconn>
</appconfig>

然后你在你的 apps 里就制作一个 static method 来读取, 或是一个专门的 class 来读取.
static method 是确保你可以在任何地方不需要 class declare 来读取这个数值.

例子 (c#):

public sealed class Config {

  public static string DBConnection {
    get {
      return MyClass.ReadValue ("dbconn");
    }
  }
}

public class MyClass {
  public static string ReadValue (string key) {
   // 这里读取相关的 xml key
  }
}


你要呼叫 connection string 的话, 可以直接这么做:

OleDbConnection conn = new OleDbConnection (Config.DBConnection);

[ 本帖最后由 goatstudio 于 19-11-2005 04:15 PM 编辑 ]
回复

使用道具 举报

Follow Us
发表于 21-11-2005 03:55 PM | 显示全部楼层
如何在VB.NET 做个小时钟?  是用TIMER吗??  我只是要DISPLAY 日期和时间然后时间的秒数会自动跳....

如何在我自己写的程序里打开别的程序? 例如, 我按下一个BUTTON 然后我的ACCESS DATABASE 就打开了.. 是用什么Command ??
我用了以下的方法但是好象不是很好,也好象不对...虽然是可以打开...
System.Diagnostics.Process.Start("my access database directry")

谢谢帮忙!!

[ 本帖最后由 callmee 于 21-11-2005 04:20 PM 编辑 ]
回复

使用道具 举报

 楼主| 发表于 22-11-2005 03:33 PM | 显示全部楼层
原帖由 goatstudio 于 19-11-2005 03:19 PM 发表



我常用的方法是 xml 文件. 例如说你先制作一个跟机的 xml, 叫着 config.xml

<appconfig>
  <dbconn>xxxxx</dbconn>
</appconfig>

然后你在你的 apps 里就制作一个 static  ...


哦。。。。。你的方法对我来说难懂了点。。小女不才

不过,xml给了我clue....我另外找了这个办法。。简单容易。。。

http://www.codeproject.com/dotnet/XMLSettingsFile.asp

或许,可以给其他人参考。。。。

现在我只剩下record locking的咚咚还没有测试。。。。。

谢谢谢谢所有人的帮忙。。。
回复

使用道具 举报


ADVERTISEMENT

 楼主| 发表于 22-11-2005 03:39 PM | 显示全部楼层
原帖由 callmee 于 21-11-2005 03:55 PM 发表
如何在VB.NET 做个小时钟?  是用TIMER吗??  我只是要DISPLAY 日期和时间然后时间的秒数会自动跳....

如何在我自己写的程序里打开别的程序? 例如, 我按下一个BUTTON 然后我的ACCESS DATABASE 就打开了.. 是用什 ...


嗯。。我也是半桶水刚学,答案不懂对不对咯。。。。希望可以帮到你啦。。。

我只知道你可以用DateTime.Now来找到现在的时间。。。 要display 时分秒就看你自己怎样format....

如果你要整个access 开出来的话,我就不会。。如果你只是要其中的table,你可以用datagrid...

ps:我的答案都是好像是。。罢了。。你自己试试看咯。。。有错的话,请这里的大大指正。。。
回复

使用道具 举报

发表于 22-11-2005 05:19 PM | 显示全部楼层
原帖由 雨吟 于 22-11-2005 03:39 PM 发表


嗯。。我也是半桶水刚学,答案不懂对不对咯。。。。希望可以帮到你啦。。。

我只知道你可以用DateTime.Now来找到现在的时间。。。 要display 时分秒就看你自己怎样format....

如果你要整个access 开出来 ...


你半桶水那就是你半桶的半桶了~~~~
今天又被水晶报告弄的团团转~~~~哎...真是 #@!%!%$#%@^@%^#&#$ 
我用上面我说的方法是可以开得到ACCESS DATABASE. 不过,我是觉得不太正确.希望各位大大能指正.
至于时间的问题并不是很重要啦.. 我是能显示日期与时间只是不会自动化更新...这个时间的问题各位大大如果觉得不想回答也不用紧.. 谢谢 啦...
回复

使用道具 举报

发表于 23-11-2005 09:43 AM | 显示全部楼层
原帖由 callmee 于 22-11-2005 05:19 PM 发表


你半桶水那就是你半桶的半桶了~~~~
今天又被水晶报告弄的团团转~~~~哎...真是 #@!%!%$#%@^@%^#&#$ 
我用上面我说的方法是可以开得到ACCESS DATABASE. 不过,我是觉得不太正 ...


时间的问题很简单...
用两个 timer 来做就可以了...
先想想看吧.
回复

使用道具 举报

发表于 23-11-2005 01:12 PM | 显示全部楼层
dynamic 读取 connection string的方法有很多种,其中一种最简单的是...

直接丢个oledbconnection,set好connection string,然后直接在其dynamic property里的ConnectionString里check那个"Map Property to a key in configuration file"就好了...
要改connection string时去web.config/app.config里改就好了...

多善用control里现成的property,可以让你的工作变得很简单,例如databinding和dynamic property就是...
回复

使用道具 举报

发表于 23-11-2005 01:19 PM | 显示全部楼层
如果一定要用code的话,可以用

dim yourValue as string = System.Configuration.ConfigurationSettings.AppSettings("yourKey")

在你的web.config/app.config里:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
  <add key="yourKey" value="yourValue" />
</appSettings>
</configuration>

[ 本帖最后由 astral 于 23-11-2005 01:20 PM 编辑 ]
回复

使用道具 举报

发表于 23-11-2005 01:37 PM | 显示全部楼层
原帖由 astral 于 23-11-2005 01:12 PM 发表
dynamic 读取 connection string的方法有很多种,其中一种最简单的是...

直接丢个oledbconnection,set好connection string,然后直接在其dynamic property里的ConnectionString里check那个"Map Property to ...


谢谢啦!!! 原来dynamic property里的ConnectionString是这样用的...
回复

使用道具 举报

 楼主| 发表于 24-11-2005 10:18 PM | 显示全部楼层

如何dynamic设定crystal report 的data source??

crystal report 里头会有一个data source...

但是现在在network 跑,data source就该refer别架电脑的database了。。。

请问,我要如何解决这个问题?要怎样重新给那个crystal report 新的datasource?
回复

使用道具 举报

发表于 24-11-2005 10:31 PM | 显示全部楼层
原帖由 雨吟 于 24-11-2005 10:18 PM 发表
crystal report 里头会有一个data source...

但是现在在network 跑,data source就该refer别架电脑的database了。。。

请问,我要如何解决这个问题?要怎样重新给那个crystal report 新的datasource?


不太了解... 为什么 data source 会无端端去 refer 另一台电脑?
回复

使用道具 举报


ADVERTISEMENT

 楼主| 发表于 24-11-2005 11:22 PM | 显示全部楼层
原帖由 goatstudio 于 24-11-2005 10:31 PM 发表


不太了解... 为什么 data source 会无端端去 refer 另一台电脑?


因为create crystal report 的时候, data source refer to local pc...

现在network 跑测试,假设data 放在别架电脑。。。database = map drive的地方了,比如说Z:/。。那同时,之前crystal report 里local设定的data source就不能用了。。也必须找个方法可以dynamic再设定那个data source....

无论如何,我找到办法啦~谢谢~~

http://support.businessobjects.c ... ticles/c2010371.asp
回复

使用道具 举报

 楼主| 发表于 25-11-2005 02:32 PM | 显示全部楼层

怎样一次过handle所有 textbox的keypress?

我现在知道如何做一个textbox 的 keypres event.....但是如果要所有form 的textbox都跑同样的event,请问该如何?

Private Sub TxtUID_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtUId.KeyPress
        
If Char.IsControl(e.KeyChar) = False And _
          Char.IsLetter(e.KeyChar) = False Then
            e.Handled = True
        End If

    End Sub
回复

使用道具 举报

发表于 26-11-2005 03:32 PM | 显示全部楼层
所有form 的textbox?
一个form的所有textbox,我就有试过。

比较简单的方法是,
1,用form的keypress,设定keypreview=true
2,用addhandle的方法

如果要所有form的可以把以上的方法加在每个form里。

Example 1

    Private Sub MyKeyPress()
        MsgBox("testing")
    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.KeyPreview = True
    End Sub

    Private Sub Form1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles MyBase.KeyPress
        MyKeyPress()
    End Sub

--------------------------------------------------------

Example 2

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        AddHandler TextBox1.KeyPress, AddressOf MyKeyPress
        AddHandler TextBox2.KeyPress, AddressOf MyKeyPress
    End Sub

    Private Sub MyKeyPress(ByVal o As [Object], ByVal e As KeyPressEventArgs)
        MsgBox("testing")
    End Sub

这是不是你要的?

[ 本帖最后由 meemee 于 26-11-2005 03:34 PM 编辑 ]
回复

使用道具 举报

 楼主| 发表于 27-11-2005 05:58 PM | 显示全部楼层

怎样在coding里头customize crystal report 的 size?

请问,我要印半张A4 Paper 大小的 report,在CR 里虽然已经设定了它的custom size,可是装上别架电脑又会随机的printer要重新set custom size......

这样子似乎太麻烦user了。。所以,请问要怎样在coding里头set好?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 30-7-2025 03:31 AM , Processed in 0.123869 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表