Solved

Accessing data within a Lotus Notes NSF file using C#

Posted on 2008-10-09
7
1,895 Views
Last Modified: 2013-12-18
Hi experts,

I'm after a light weight solution that will allow me to access an NSF database using .Net.  By light weight I mean not having to install the full Lotus Notes Client.  I realise this might be a bit of a stretch but I'd at least like to try and establish a list of the dlls that are required.

In terms of functionality I only need to get an item count and possibly iterate all items and get the attachment count as well.  I can see how to do this in the Lotus Notes C++ API.

My main question is which API should I be using?  Is there a set of COM dll's available that I can use through .Net?  Has anyone successfully connected to an NSF through C#?  Are there any code samples available?

Cheers!
0
Comment
Question by:hdkelly
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
7 Comments
 
LVL 46

Expert Comment

by:Sjef Bosman
ID: 22676893
IMHO: forget it, if you try this with a local Notes database.

If you connect to a server, you can use Java, via DIIOP you can connect to the Domino server.

Alternative: don't open the database but use HTTP to open the database.
0
 
LVL 2

Author Comment

by:hdkelly
ID: 22677226
OK, it seems that the Domino Object Model (domino.dll) is the accept method of COM communication.  I have prototyped a solution using this API that meets my needs.

My question is can I get this prototype to work on a machine without the Notes client installed?  Furthermore, is there anyway to access an NSF database without having the client installed?  I'd like to hope there is as I don't want to distribute the client with my solution.
0
 
LVL 46

Expert Comment

by:Sjef Bosman
ID: 22677319
> ... can I get this prototype to work on a machine without the Notes client installed?  
No.

> Furthermore, is there anyway to access an NSF database without having the client installed?
No.

a) Java, DIIOP, Domino server.
b) HTTP

But, by all means, wait for others for their opinion.
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 2

Author Comment

by:hdkelly
ID: 22677390
I'm beginning to accept that you are right.

As a last gasp attempt, is there a subset of required files that can be isolated from the Notes Client install and distributed\registered manually?  Or does domino.dll rely on a whole heap of other configuration and registry settings?
0
 
LVL 46

Accepted Solution

by:
Sjef Bosman earned 250 total points
ID: 22677621
AFAIK there are no settings in the registry (or very few). But there is a file notes.ini, which is used extensively for settings and other parameters. I understand your question, it seems valid, but you should also know that the majority of Notes environments really value its impenetrability. What you're trying to do violates at least one but maybe more of the security principles of  Notes.

Anyway, if you want to interact with a Notes database, you are de facto a user, and therefore are required to have a user licence, which is the price of a Notes client. You could say that the Notes client is free, but to use it costs you a user licence.

So, in fact, it is up to your end-user to acquire a Notes client and take care of the licensing issues. All you should do is make sure your solution works together with a Notes client. Using COM is one solution, apparently you managed to use it in your application already.

Honestly, I never tried a minimal installation, it might even be fun. And it might even work, although I don't know how Notes would ask for the password that comes with the id-file you allways need. In any case,  if you copy those files to PC other than the one you installed them on I'd say you'd be violating the copyrights of Lotus Notes...
0
 
LVL 2

Author Comment

by:hdkelly
ID: 22678509
Cheers for the response,

I would certainly expect to pay for a client license on each machine I interacted with an NSF on.  I am not trying to avoid this cost rather I am trying to streamline my deployment process.  And although it is heading that way, I would have preferred not to have a Notes Client install as a prerequesit for running my service.

I am interacting with individual NSF files removed from their native environment and network, so maintaining security in my workflow is not an issue.

I am aware of the importance and function of the notes.ini file.  I'm not prepared to experiment in order to find a skeleton install that works, as unfortunately I don't have the time.  If this is something you come across in the future please contact me.  Otherwise I appreciate your help, your advice has been valuable.

Thanks.
0
 
LVL 46

Expert Comment

by:Sjef Bosman
ID: 22678757
Thanks as well.

> I am interacting with individual NSF files removed
> from their native environment and network, so
> maintaining security in my workflow is not an issue.
It might not be an issue on your side, but on the side of the original owner of the NSF files! I for one wouldn't be too happy in discovering that you can fiddle with my mail database... ;-))
But you're right when you say that I should have used encryption if I want my data secure. To rely only on Notes' built-in access rights is not enough.
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

For Desktop Techs: How to retain a user's Notes configuration data when swapping out the end user's computer. (Assuming that you are not upgrading to a completely different version of Notes client) All you need to do is: 1) install Notes o…
  In today’s Arena we can’t imagine our lives without Internet as we are highly used to of it. If we consider our life style just for only 2 min we found that face to face communication is swapped by e-communication.  Every Where from Works place to…
Monitoring a network: why having a policy is the best policy? Michael Kulchisky, MCSE, MCSA, MCP, VTSP, VSP, CCSP outlines the enormous benefits of having a policy-based approach when monitoring medium and large networks. Software utilized in this v…
Monitoring a network: why having a policy is the best policy? Michael Kulchisky, MCSE, MCSA, MCP, VTSP, VSP, CCSP outlines the enormous benefits of having a policy-based approach when monitoring medium and large networks. Software utilized in this v…

707 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question