pbobj.connectToNewObject("Powerbuilder.Application")

I am using this to create a GUID.

OLEObject  pbobj
string            ls_guid
long              ll_rc
pbobj = create OLEObject
pbobj.connectToNewObject("Powerbuilder.Application")
ll_rc = pbobj.generateguid(ref ls_guid)

When I run locally it works, I get a GUID every time.  If I build my
application and deploy it I don't get the GUID.

Is there any powerbuilder dll that I need to include in my deployment for
this to work.  The rpcrt4.dll is in the path in the C:\WINNT\System32
directory.  When deployed the application is running through citrix would
this cause an issue?


0
Rich
2/4/2005 3:54:42 PM
sybase.ole-ocx-activex 6324 articles. 0 followers. Follow

8 Replies
1398 Views

Similar Articles

[PageSpeed] 35
Get it on Google Play
Get it on Apple App Store

Is there a way to get the Powerbuilder Application OLE object on a machine
without installing Powerbuilderl?

"Rich Catlett" <rc2581@sbc.com> wrote in message
news:42039ac2$1@forums-1-dub...
> I am using this to create a GUID.
>
> OLEObject  pbobj
> string            ls_guid
> long              ll_rc
> pbobj = create OLEObject
> pbobj.connectToNewObject("Powerbuilder.Application")
> ll_rc = pbobj.generateguid(ref ls_guid)
>
> When I run locally it works, I get a GUID every time.  If I build my
> application and deploy it I don't get the GUID.
>
> Is there any powerbuilder dll that I need to include in my deployment for
> this to work.  The rpcrt4.dll is in the path in the C:\WINNT\System32
> directory.  When deployed the application is running through citrix would
> this cause an issue?
>
>


0
Rich
2/7/2005 10:15:23 PM
You don't need to install the entire IDE, just the PB runtime files (PBVM, PBRTE, PBDWE, and so on).  If you're on PB9 
or later, there's a utility called PBPACK90.EXE (PBPACK100.EXE for PB10) that packages up all the client-side DLLs and 
stuff into a Microsoft Installer file (.MSI) which you can distribute as part of your application install.

-- 
Paul Horan[TeamSybase]

"Rich Catlett" <rc2581@sbc.com> wrote in message news:4207e878$1@forums-2-dub...
> Is there a way to get the Powerbuilder Application OLE object on a machine
> without installing Powerbuilderl?
>


0
Paul
2/8/2005 2:57:28 PM
We already include pbdwe.dll, pbodb.dll, pbrtc.dll and pbvm.dll in out
deployment.  Is there another dll that we should include to make the
following call work?

pbobj = create OLEObject
ll_rc = pbobj.connectToNewObject("Powerbuilder.Application")

This works locally, but not when our applicationis deployed to the servers.

"Paul Horan[TeamSybase]" <paulhATvcisolutionsDOTcom> wrote in message
news:4208d354$1@forums-2-dub...
> You don't need to install the entire IDE, just the PB runtime files (PBVM,
PBRTE, PBDWE, and so on).  If you're on PB9
> or later, there's a utility called PBPACK90.EXE (PBPACK100.EXE for PB10)
that packages up all the client-side DLLs and
> stuff into a Microsoft Installer file (.MSI) which you can distribute as
part of your application install.
>
> -- 
> Paul Horan[TeamSybase]
>
> "Rich Catlett" <rc2581@sbc.com> wrote in message
news:4207e878$1@forums-2-dub...
> > Is there a way to get the Powerbuilder Application OLE object on a
machine
> > without installing Powerbuilderl?
> >
>
>


0
Rich
2/8/2005 3:50:39 PM
"Rich Catlett" <rc2581@sbc.com> wrote in message news:4208dfcf$1@forums-1-dub...
> We already include pbdwe.dll, pbodb.dll, pbrtc.dll and pbvm.dll in out
> deployment.  Is there another dll that we should include to make the
> following call work?
>
> pbobj = create OLEObject
> ll_rc = pbobj.connectToNewObject("Powerbuilder.Application")
>
> This works locally, but not when our applicationis deployed to the servers.
>


Define "deployed to the servers"...   Are you saying that your clients run the applications from a shared LAN drive?  If 
so, are the PB runtimes on the server too, or just your .EXE/.PBD executable files?

For a PB application to use ConnecttoNewObject(), the COM class that's referenced (whether it's 
PowerBuilder.Application, or Excel.Application, or whatever) has got to be registered on the LOCAL WORKSTATION.  Now, 
you can register a DLL that lives out on a network share, but that registration has got to be in the local registry just 
the same.

On my machine, PowerBuilder.Application is registered to "C:\Program Files\Sybase\Shared\PBVM100.DLL".  If you don't 
want to install those PB runtimes locally, then just register the DLL from the LAN drive it's currently living in.

-- 
Paul Horan[TeamSybase]


0
Paul
2/8/2005 11:53:54 PM
We run our application from servers via citrix.  In order to deploy out
application we copy the pbd's, dll's and any extra runtime files need to the
servers.

We tried to register pbvm90.dll using the Regsvr32 E:\\<path to
dll>\pbvm90.dll

pbvm90.dll was loaded, but the DllRegisterServer entry point was not found.

pbvm90.dll may not be exported, or a corrupted version of Dllname may be in
memory. Consider using Pview to detect the file and remove it.

We tried severl different pbvm.dll's in different locations that we use to
run our application just fine, but they all returned the following error.

Any ideas?


"Paul Horan[TeamSybase]" <paulhATvcisolutionsDOTcom> wrote in message
news:42095112$1@forums-1-dub...
> "Rich Catlett" <rc2581@sbc.com> wrote in message
news:4208dfcf$1@forums-1-dub...
> > We already include pbdwe.dll, pbodb.dll, pbrtc.dll and pbvm.dll in out
> > deployment.  Is there another dll that we should include to make the
> > following call work?
> >
> > pbobj = create OLEObject
> > ll_rc = pbobj.connectToNewObject("Powerbuilder.Application")
> >
> > This works locally, but not when our applicationis deployed to the
servers.
> >
>
>
> Define "deployed to the servers"...   Are you saying that your clients run
the applications from a shared LAN drive?  If
> so, are the PB runtimes on the server too, or just your .EXE/.PBD
executable files?
>
> For a PB application to use ConnecttoNewObject(), the COM class that's
referenced (whether it's
> PowerBuilder.Application, or Excel.Application, or whatever) has got to be
registered on the LOCAL WORKSTATION.  Now,
> you can register a DLL that lives out on a network share, but that
registration has got to be in the local registry just
> the same.
>
> On my machine, PowerBuilder.Application is registered to "C:\Program
Files\Sybase\Shared\PBVM100.DLL".  If you don't
> want to install those PB runtimes locally, then just register the DLL from
the LAN drive it's currently living in.
>
> -- 
> Paul Horan[TeamSybase]
>
>


0
Rich
2/9/2005 6:53:09 PM
"Rich Catlett" <rc2581@sbc.com> wrote in message news:420a5c15$1@forums-1-dub...
> We run our application from servers via citrix.  In order to deploy out
> application we copy the pbd's, dll's and any extra runtime files need to the
> servers.
>
> We tried to register pbvm90.dll using the Regsvr32 E:\\<path to
> dll>\pbvm90.dll
>
> pbvm90.dll was loaded, but the DllRegisterServer entry point was not found.
>
> pbvm90.dll may not be exported, or a corrupted version of Dllname may be in
> memory. Consider using Pview to detect the file and remove it.
>
> We tried severl different pbvm.dll's in different locations that we use to
> run our application just fine, but they all returned the following error.
>
> Any ideas?
>
>


Look at the machine's PATH variable.  Try adding E:\<path to dll>  into the PATH and re-registering the DLL.

-- 
Paul Horan[TeamSybase]


0
Paul
2/9/2005 10:17:21 PM
We added pbvm90.dll to the system path, and we still get the error that is
mentioned below.  The dll isn't bad because we use to to run our
application, and we have tried it on different machines with different dlls.
We're stumped, is the pbvm90.dll the dll the allows powerbuilder to create
the "Powerbuilder Application" OLE object?  What can we do to get this to
work?  Any ideas?

"Paul Horan[TeamSybase]" <paulhATvcisolutionsDOTcom> wrote in message
news:420a8bf1$1@forums-1-dub...
> "Rich Catlett" <rc2581@sbc.com> wrote in message
news:420a5c15$1@forums-1-dub...
> > We run our application from servers via citrix.  In order to deploy out
> > application we copy the pbd's, dll's and any extra runtime files need to
the
> > servers.
> >
> > We tried to register pbvm90.dll using the Regsvr32 E:\\<path to
> > dll>\pbvm90.dll
> >
> > pbvm90.dll was loaded, but the DllRegisterServer entry point was not
found.
> >
> > pbvm90.dll may not be exported, or a corrupted version of Dllname may be
in
> > memory. Consider using Pview to detect the file and remove it.
> >
> > We tried severl different pbvm.dll's in different locations that we use
to
> > run our application just fine, but they all returned the following
error.
> >
> > Any ideas?
> >
> >
>
>
> Look at the machine's PATH variable.  Try adding E:\<path to dll>  into
the PATH and re-registering the DLL.
>
> -- 
> Paul Horan[TeamSybase]
>
>


0
Rich
2/12/2005 6:34:50 PM
"Rich Catlett" <rc2581@sbc.com> wrote in message news:420e4c43$1@forums-2-dub...
> We added pbvm90.dll to the system path, and we still get the error that is
> mentioned below.  The dll isn't bad because we use to to run our
> application, and we have tried it on different machines with different dlls.
> We're stumped, is the pbvm90.dll the dll the allows powerbuilder to create
> the "Powerbuilder Application" OLE object?  What can we do to get this to
> work?  Any ideas?
>

Yes - PBVM90.DLL "is" the DLL that creates "PowerBuilder.Application".  We've built an integration architecture around 
this approach, so I know it works well.

You don't add the DLL to the path - you add the FOLDER containing the DLL (and all the other DLLs) to the PATH.
i.e., not C:\Program Files\yourApp\pb9i32DK\pbvm90.dll;    but just: C:\Program Files\yourApp\pb9i32DK;   Then you run 
REGSVR32 <foldername>\PBVM90.DLL in a command window.

The COM registration process needs to be able to reference all the DLLs that the file being registered will also need. 
To see what I'm talking about, download a copy of DependencyWalker from www.sysinternals.com, and run that against 
PBVM90.DLL.  You'll see that it needs PBDWE90.DLL, PBRTE90.DLL, LIBJCC.DLL, and about 5 or 6 others (not including all 
the MS Windows stuff).   If REGSVR32 can't "see" those files as well, the registration fails, and your app can't 
instantiate the class on a machine where that registration hasn't happened.  It works on your machine because you 
installed the PB9 IDE, and ITS install routine does that registration for you.

Compare the registries on a "working" machine to one that doesn't.  Go to HKEY_CLASSES_ROOT, and search for 
'PowerBuilder.Application'.  On a "working" machine, you should find it in the ProgID key underneath a specific GUID. 
The InProcServer32 key under that same GUID will reference the folder containing PBVMnn.DLL.  I'll bet this isn't there 
on a non-working machine.  This registration step needs to become part of your app deployment process.

-- 
Paul Horan[TeamSybase]


0
Paul
2/13/2005 1:24:09 PM
Reply:

Similar Artilces:

ConnectToNewObject( "PowerBuilder.Application" )
The following code runs without problem on development workstation, but fails when deployed to workstation with only runtime files deployed. PBObject = Create oleObject iResult = PBObject.ConnectToNewObject( "PowerBuilder.Application" ) iResult returns -2 Search of registry found that "PowerBuilder.Application" is registered on workstations with PowerBuilder deployed on, but is not on workstations with runtime deployed. Have tried registering pbvm90.dll, but get error message pbvm90.dll was loaded, but the DllRegisterServer entry point was not found. Not...

Powerbuilder application "crashing" another powerbuilder application
This is a repost of the above subject since there has been some problem for messages posted on the 19th - 22nd July 2002. *************** Hi All, I have an application (App A)built using PB7.0.3 build 10077 and it seems to work fine. However, recently, another application (App B) built using PB 7.0.3 build 10047 as well was installed and it seems to trigger Dr Watson on App A. There is an embedded OCX on a "main" window on App A, which receives triggers from external applications. The OCX will then call another function sitting on another main window. That function w...

.ALLCOL("%COLUMN%", " ", ", ", ", ")
Do you know anyway for me to exclude a subset of columns returned by this function. We have two columns (rec_user and rec_datetime) which are in all of our tables, but when generating triggers I want automatically generate a script which does not include those two columns but does include all other columns in that table. Bruce I should add that I am using PD 9.0.0.580. Bruce "Bruce Lamb" <lamb.bruce@mayo.edu> wrote in message news:6HgI315nCHA.155@forums.sybase.com... > Do you know anyway for me to exclude a subset of columns returned by this > function. ...

Precedence of "where" ("of", "is", "will")?
Nobody on #perl6 today could answer this one. Is: Str | Int where { $_ } the same as: (Str | Int) where { $_ } or: Str | (Int where { $_ }) ? Followup questions, Mr. President: What kind of operators are "where", "of", "is", and "will"? Is there a reason that S03 doesn't list them? What are their precedence(s)? -- Chip Salzenberg - a.k.a. - <chip@pobox.com> Open Source is not an excuse to write fun code then leave the actual work to others. Chip Salzenberg writes: &...

quotes, quotes, quotes...
I am getting this error and I know what is causing it, but I have no idea how to fix it, any help would be great. The script steps through the /var/log/messages file on a linux server and puts The entries into a mysql database. However when it gets to the 'hlt' line in the messages file it just barfs. The single quotes are freaking it out. I know about quotes but not how to use in this situation. Thanks, Paul Error: May 27 17:53:00 localhost kernel: Checking 'hlt' instruction... OK. <----- doesn't like this in the messages file DBD::mysql::st exec...

How To Set "Trial Application" and "Bound To This Machine" .NET application only
Hi, This is the first time I made a web application for a client. Since he has not paid me, what should I do so that the application will terminate within x days starting from the day I install the application in his server ? And is it possible to make application works on his server only ? I don't want the files copied without my permission.   Thank you very much for your attention.  ===================================Don't Quote And Flame Me If I Am Wrong===================================...

"-" not "_"
I wrote a SQL statement in the data tab. I wrote a bunch of alaises as example ' word-type ' but when I hit the layout tab it converts the "-" to "_". So now my field name is ' word_type '. Is there any way to prevent this? CardGunner Don' use a hypen ( - ).  It isn't a valid character for column names.   See http://searchsqlserver.techtarget.com/expert/KnowledgebaseAnswer/0,289625,sid87_gci1188931,00.html   Here's an excerpt about column names: Letters as defined in the Unicode Standard 2.0 Decimal numbers from either B...

"Using" or "With"
Hi all Please can someone enlighten to me as regards the difference with the "Using" and "With" statement when accessing data - which is better, what are the limitations and/or any pointers. Many thanks. Regards DaveDavid WinchesterPlease mark as answer if this is the solution.  using gives you the ability to use the connection and it closes the connection directlly after you finish using it. and there is no need to try- cach - finaly. there is no limitation on using USING keywordMuhanad YOUNISMCSD.NETMy Blog || My Photos || LinkedIn I have a dataobject the re...

"Me" is better than "You"
Yes I know, strings are frozen. But let me talk about it, I really can't get through the idea of a PC talkin to me. I consider my PC as an extension of myself, not a dumb companion who addresses Me as You. Yes there are times when I get angry with Him while I work and get wrong calculations etc.., but it really is my fault, Me using wrong istructions and eventually wanting to find someone else to blame, but it's Me. And yes, I consider Thunderbird my mail program, reading my mail on my PC as Me. So I personally like to have Me in the header bar as a compact address ...

Using "+" or "||"
Using SQLAnywhere 5.5.04, I've gotten into the habit of using "||" in ISQL to indicate a string concatenation. I needed to paste my SQL statement into the PowerBuilder script painter for some embedded SQL, and PB didn't like the "||" very much at all. I changed it to "+" and it seems to be ok. Do these two operators indicate ~exactly~ the same thing? moin, afaik these two's are not the same! if you're using "||" and any term is NULL then in the resultstring the term will be ignored if you use "+" then the resu...

Replacing "\\" with "\"
Hi all I'm getting this value from a CheckBoxList control - a location of file, i have to remove "\\" and replace it with "\" and pass it to Query, how to do it, i tried with Replace, but coud'nt suceed. "\\\\Blaze10xp\\BLZ_SFS_07\\Sample Excel Files\\Excel Files\\report2.xls" thank's in advance - Prakash.C you tried Replace like this? string newstring = oldstring.Replace(@"\\",@"\");Plese, do not forget to click "Mark as Answer" on the post that helped you. Thanx!My blog: Scenes From A Developer Memory yes i tr...

"classname" parameter of function "connecttonewobject"
Hi: I'm using function "ConnectToNewObject" to work with Word, the "classname" parameter is "word.application".If I want to work with other OLE classes, like excel, powerpoint,etc,How can I get their "classname"? I'm using Formula One 6, I don't know its classname,so some methods and properties can't be used in my app. Thanks in advance. hi, check in the object browser in pb and go to OLE tab and look in programmable ole objects. Cicy John Shen wrote: > Hi: > I'm using function "ConnectToNewO...

Cache("My_DS") or Application("My_DS")
What is the difference between the above? Thanks. Hi, There are major difference between Cache("My_DS") and Application("My_DS") . If large amount of reqiest is coming then cache data is deleted automatically. This feature is called scavanging. This feature is not in application state. With regards Anurag Pandey Anurag Pandey Software Developer Consulting Engineering Services India Pvt. Ltd. New Delhi, India Hi, Cache("My_DS") will maintain the content in the Cache object. Application("My_DS") will maintain the conte...

double quote
hello there...  i tried everything of think but not working the way i wanted to be... not sure what i'm missing...i'm generating a <span> in code behind and then using in javascript.... here is what i'm doing code behind: int i=0string _keywordID = "keyword";string _name = row["visit_info_nm"].ToString().Trim(); String _getElementByID = String.Format("<span id='{0}' OnClick = \"document.getElementById('{1}').value='{2}';\">{3}</span><br>", i, _keywordID, _name, _name); here is what it generate : <span id='1' OnClick = \"document.getElementById('keyword')...

Web resources about - pbobj.connectToNewObject("Powerbuilder.Application") - sybase.ole-ocx-activex

Resources last updated: 12/30/2015 12:28:09 PM