Friday, April 1, 2022

DataGridView Value Selection from Cells

DataGridView Value Selection from Cells

Visit

http://msdnwiki.microsoft.com/pt-br/mtpswiki/system.windows.forms.datagridview.cellcontentclick(VS.80).aspx

Thanks

Command line version of the Service Listing Manager

I released a newer version of the Service Listing  Manager that includes a command line tool, ssbslm.exe. More details at the project homepage http://www.codeplex.com/slm

Office RoundTable 2007

Chris Avis wrote this:

If by chance you have not heard of Roundtable, check out this post by Carl Tyler. Now that you are back and itching for more, I will save you the time in searching the Microsoft site. There isn't anything there. A few press notices and a passing reference on a Unified Communications site. The two video's show it better than anything else.

Except for....

...these videos posted over at on10!

I remember seeing a proto type of something like this a while back.  It brings a whole new meaning to conference calls.

SP2 Database Services Failure: MSP Error: 29528

Just FYI...

I kept having problems getting SP2 to install on my Server 2003 SP1 machine.

All of the services got upgraded correctly except for the Database Services.

The following error showed in the report at the end of setup:

MSP Error: 29528  The setup has encountered an unexpected error while Installing Local Groups. The error is: A member could not be added to or removed from the local group because the member does not exist.

 

There were so many event log entries to wade through... but I finally found one that made sense:

I had renamed the Administrator account on my machine and the SP2 install was failing when it was trying to add the  myComputer\Administrator user account to one of the local security groups.

I renamed the account back to 'Administrator' and ran the setup again... worked fine.

Outlook 2007: parse email domain as sortable field

In this day and age of spam and vandalism difficulties, I wish I could sort & group my Outlook inbox by the email domain of the sender, parsed out of the sender's address as a field that may be added to the message list, sortable, and groupable.
Outlook junk mail filter is very good, as is our Barracuda.  But additional unwanted mailings get through as we know, and productivity in reviewing junk mail for that which is not would be greatly enhanced by the addition of the feature I suggest.
Nothing is foolproof, but this would help a lot.

Web Chat on March 13: Deploying NAP end-to-end in your Enterprise

Web Chat: Deploying NAP end-to-end in your Enterprise

The Enterprise Networking Group is hosting a web chat on Tuesday March 13th 2007 at 11am Pacific time. This web chat will focus on what's involved in implementing NAP in an organization, as well as updating everyone on NAP's development status. There will be the opportunity to ask questions of the developers, tests and program managers working on NAP.

This is part of the team's ongoing efforts to engage with our customers, answer questions and find out your thoughts on the product.


Tuesday, March 13, 2007

11:00 A.M - 12:00 P.M. Pacific Time

2:00 - 3:00 P.M. Eastern Time


Join the chat room on the day of the chat:
TechNet: <>www.microsoft.com/technet/community/chats/chatroom.aspx<>




NAP Product Group

NAP Web Chat, March 13: Deploying NAP end-to-end in your Enterprise

Web Chat: Deploying NAP end-to-end in your Enterprise

The Enterprise Networking Group is hosting a web chat on Tuesday March 13th 2007 at 11am Pacific time. This web chat will focus on what's involved in implementing NAP in an organization, as well as updating everyone on NAP's development status. There will be the opportunity to ask questions of the developers, tests and program managers working on NAP.

This is part of the team's ongoing efforts to engage with our customers, answer questions and find out your thoughts on the product.


Tuesday, March 13, 2007

11:00 A.M - 12:00 P.M. Pacific Time

2:00 - 3:00 P.M. Eastern Time


Join the chat room on the day of the chat:
TechNet: <>www.microsoft.com/technet/community/chats/chatroom.aspx<>

Design pattern for time related association of children with parents

Over the years I have come across several occasions that require that an entity (lets say players) is a part of another entity(lets say team).

Players may be on bench or unavailable due to some sickness and then manage to come back. A similar situation is in the case where rates for some service may be loaded and are valid till a certain date. If no date is specified it is valid to infinity.

The challenge is to handle this kind of a dynamic change in validity and assoication of one entity to another.

 

A simple way to solve this is as follows

in the child table(players or rates)

Enter two new columns, Associated from and associated to.

When entering values if no assoicated to date is supplied enter infinity(31-Jan-9999) in case of sql server, the associated on date could be today.

The trick is to use the largest possible date, I have come across designs where null is used in place of this..and this makes using the between and < operator very difficult(in case u want to pull out the players in a team for a particular period of time).

following is the sql for handling added, removed and new added associations

 

--AssocTab->The table that hold the association between child and parent
--#TempList contains all the child ids, like PlayerId, studentId etc(I was coding something similar,
--and just decided to change table names. I was passing a comma seperated list of child ids and parsing
--that into a table hence the temp table prefix)

--check if there is any new association, to be inserted
--into the parent_child association table(this is a 1 to many relationship)


select childId
into  #NewAssoc
from #Templist --this contains all the new children of a particular parent
where childId
not in(
 select AssocTab.ChildId
 from AssocTab
 where AssocTab.ParentId= @ParentId
 and AssociatedTo > getdate()--only current associations
 )


insert into AssocTab(ParentId,
ChildId,
AssociatedFrom,
AssociatedTo,
User_Id)--in case u want to track who did it
select @ParentId,
#NewAssoc.ChildId,
getdate(),
'01/01/9999',
87
from #NewAssoc


drop table #NewAssoc
--check if there is any association that has been removed
--these associations are to be closed. so update the
--associated till date.

update AssocTab
set AssociatedTo = getdate()
where ChildId in (
select ChildId

 from AssocTab
 where ChildId
not in(
 select ChildId
 from #Templist
 )
and AssociatedTo > getdate()--only current associations
 )
and Parent = @ParentId--only this terminal


drop table #Templist

Comments and sql optimisations are welcome. Also if you have come across similar posts before, let me know, I havent; but incase some1 has blogged something like this before me, just want to know that i did not copy it from there ..

I previewed this and some brackets have come as smilies, so they might give syntax errors.

" Long you live and high you fly
And smiles you'll give and tears you'll cry
And all you touch and all you see
Is all your life will ever be. "

-Syd Barett

 

 

Finding mins and max time from records with different start time other that 12:00 midnight

I have a series of start and end time records. The problem is to select the min and max time from the series of records.

The following contraint applies. The start of broadcast time is 6:00 am. That is, minimum for start time is 6:00 am and maximum for end time is 5:59 am. So the following is illegal for start and end time, for example, 4:00 am - 6:30 am because it crosses the broadcast start time of 6:00 am.

Start             End

10:00 pm -----  2:00 am

6:30 am   ----- 8:30 am

2:00 am  ---- 3:45 am

11:00 am ---- 4:00pm

12:00 am ---- 3:40 am

You might be tempted to used -> Select MIN(Start), Max(End), but that will return 12:00 am - 4:00 pm, which is wrong, because sql server uses 12 midnight at the start time.

Can' t seem to come up with the tsql, please help

 


Reply:

In my opinion it's not totally clear exactly what you're looking for.

In the example that you supplied, what results would you expect to be returned by the query? Also, are you storing the data as DATETIME values?

Thanks
Chris


------------------------------------
Reply:
Sorry. Since the min begin time is 6:00 am and the maximum end time time is 5:59 am, the expected result should be 6:30 am - 3:45am.

------------------------------------
Reply:

Thanks for providing the extra info.

Please could you also clarify what datatype you are using to store the times as this will affect the solution.

Thanks
Chris


------------------------------------
Reply:

job:

I think that I also am not sure exactly what you are trying to do.  Maybe a starting point is to substract six hours from your "startTime" to establish a "work day"; something like:

declare @timeStuff table
   (    shiftId         integer,
        startTime       datetime,
        endTime         datetime
   )

insert into @timeStuff values ( 1, '3/4/7 22:00', '3/5/7 2:00' )
insert into @timeStuff values ( 2, '3/5/7 06:30', '3/5/7 8:30' )
insert into @timeStuff values ( 3, '3/5/7 02:00', '3/5/7 3:45' )
insert into @timeStuff values ( 4, '3/5/7 11:00', '3/5/7 16:00')
insert into @timeStuff values ( 5, '3/6/7 00:00', '3/6/7 3:40')

declare @offset datetime     set @offset = '06:00:00.000'

select convert (varchar(8), startTime - @offset, 101) as [workDate ],
       left(convert (varchar(8), startTime, 108), 5) as startTime,
       left(convert (varchar(8), endTime, 108), 5) as endTime
  from @timestuff
order by startTime

--   workDate  startTime endTime
--   --------- --------- -------
--   03/05/20  00:00     03:40
--   03/04/20  02:00     03:45
--   03/05/20  06:30     08:30
--   03/05/20  11:00     16:00
--   03/04/20  22:00     02:00



------------------------------------
Reply:

If 4 am is not legal how did it get into your db in the first place, going by what you want there shoudl be nothing less than 6.00 am in your Start column. Get the place of entry sorted out and you should fine.

for the bad data u posted above you could still use

Select min(start), Max(End)

from tablename

where

convert(use conversion to convert time to last digits in time in start)>5.59 and

and convert(use conversion to convert time to last digits in time)<

--you can figure out the where condtion

point is it can be done


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

error while trying to allow external unauthenticated commands

I tried to run the command to allow anonymous SMTP senders and I am getting this error. Is this because I originally had an Exchange 2003 server feeding the 2007 server? I don't know where the reference is to the old server nor how to remove it.

Any help would be most appreciated. Thanks

 

[MSH] C:\Documents and Settings\Administrator>Set-ReceiveConnector -Identity "De
fault <ServerName>" -PermissionGroups "AnonymousUsers"
Set-ReceiveConnector : The operation could not be performed because 'Default <S
erverName>' could not be found on SERVER.XXX.com.
At line:1 char:21
+ Set-ReceiveConnector  <<<< -Identity "Default <ServerName>" -PermissionGroups
 "AnonymousUsers"
[MSH] C:\Documents and Settings\Administrator>


Reply:

most likely still in active directory - use ADSI Edit to remove it. see kb833396

 


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

Sloooooooooooooow IE

I've just started using Vista and have found IE to be essentially unusable.  It is utterly, incredibly SLOW!  I've used IE 7 successfully in XP, Windows Server 2005 and it's fast.  This is a disaster.  Allow at least a minute for a page to load.  If there are Yahoo or Google tool bars, just forget it.  It's too  bad, so I'm using Firefox and it's fine.  But I prefer IE.  Microsoft, can you please get this fixed!

Reply:
AGREED!!

------------------------------------
Reply:
Mine is having the same problem. I can download at 100+kb/s, but when loading a webpage it takes about 5 minutes. Internet explorer says "waiting for ___" forever. The page will evntually load, but this page, for example, took a few minutes.

------------------------------------
Reply:

Yes, I simply add a "me-too" message to stress the problem. It's just unusable.

I've been hunting for optimization tricks, read hopeful stuff about phising filter updates and so forth but making sure I am up-to-date with windows updates makes no difference.

I installed Firefox and it works much quicker. Overall, performance of Vista is acceptable on my hardware (asus w7j laptop) EXCEPT for IE7

Any suggested fixes, tips/tricks?


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

Torrid time installing SQL EE 2K5 SP2 on standalone basis

I've just spent the most frustrating 4 hours trying to install SP2.

I kept getting "unable to start SQL Server service....see BOL ...re starting the service manually" messages; with the only options being to Retry or Cancel. Retry resulted in the same message. Cancel resulted in all components except SQL (sqlexpress) being installed - therefore totally useless

No mater what I did i could start the SQLservice as it did'nt show in the list of Services; nor did the SQL EE programme show in the Add/Remove Programs...evenn though the other components did.

I deleted/removed everything that was istalled; cleaned up the Registry; and tried again...

..and again

..and again

FIVE install / re-install failures; numerous registry cleanups!!!!

I was at the point where it looked like i'd have to reformat my hard disk, and completely re-install XP, all aplications i.e. Office 2003 etc in order for the thing to work.

I gave it one more shot, but this time, during install

- selected all components  except SDK

- I unchecked the Start SQL / BROWSER at startup

- Checked the Enable User Instances and Add to Administrators boxes

Lo and behold....it installed!!!

I'm still very worried as the registry is full of "duplicate" entries i.e. Blah blah blah and blah blah blah.1

But at least the thing is installed.

Would interested to hear if anyone has had similar or other problems with the SP2 install/upgrade

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

For info:

I ran the install as Administrator

IIS not installed

Win XP Sp2 fully updated

Dell Inspiron XPS M1710 laptop with 2gb Ram; 2ghz Duo core processors


Reply:

Sorry to hear you've had so many problems installing.  Typically this is a result of some leftover pieces from a previous install, different editions, etc.  If you have any other specific install issues, you might want to post them to the setup and upgrade forum.

Thanks,
Sam Lester (MSFT)


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

Various problems with Windows Vista Premium Home

I have noted several issues which have  so far been unresolved in  my Windows Vista machine, fresh off the  floor at Best Buy.

Machine is a ACER with 4200+ Dual 64 processors, 1 GIG DDR2, and a 320 GB hard drive.

Issue 1. A lack of driver availability from Lexmark, Unable to print documents since day one.

Issue 2. Windows Media will not play in the  Firefox browser. Plug in states that a more recent version is already installed and the 'current' version on the download site will not install.

Issue 3. Functional processes in my alternate text editor (NoteTab Standard 5.1)  will nt allow  the program to automate keystrokes, (Keyboard  emulation in 'clip' processes).

Isuue 4: Media Center will not "let go" of the play files controls, and when activating the keyboard media play key, Media center plays as well as the key assigned audio program.

Issue 5: The  DVD Dual Burner that came with teh Unit at first didn't oprate, and now it "Hangs" just before completing a  burn

Issue 6: upon initial run of the system Windows "instant upgrade" failed to burn a emergency disc, actually 7 discs were  (CD-Rs) were  destroyed by incomplete writing.

Issue 7: The Computer keeps "Losing" contact with the internet, reporting it is  connected, adn working proerly, but  no transfer of data occurs.After hours of no contact it suddeenly works again, I use a cable modem.

I am sure there are more  issues, but I haven't been able to use the system at the level I expected to be able to.


Giving up on Vista

3 weeks in, I have fought my way through the installation (dual-boot with XP) and activation processes and got as much of my hardware working as I can - with damn all help from the manufacturers.

What has all this yielded?

The good news first: (1) It looks lovely (2) The new Search facillity is great. That 's it.

The bad news (hardware): Scanner, digital voice recorder and joystick don't work - manufacturers advise no drivers are likely to be forthcoming for the first two while the third uses the now-unsupported gameport.

The bad news (software): Vista itself has the same problems as XP in many areas - here are just a few:

(1) It is unstable on a pretty standard system - Explorer crashes on right-clicking anything about 50% of the time. IE crashes on exit and, as it can't detect the circumstance triggering the crash, then restarts - wasting further time.

(2) It just hasn't evolved:

  • error messages stilldon't reflect the fault and don't indicate the generating application
  • the system still thrashes the hard drive and, although it is possible to identify what application is doing this, it is not easy - most 'everyday' users will never find the necessary dialog
  • there is still no way to have Explorer columns auto-resize - they default to narrow columns which leave acres of unused screen
  • defragmenter announces that it may take 'minutes to hours' to complete but there is now no guide as to progress made at any stage

and so on.........................

Finally, it has today started refusing to run apps it had no problem with up to today. No changes have been effected to explain this behaviour, but I have found all my system restore points erased when I attempted a roll-back. Wonderful!

All in all, Vista seems to have been designed by people with the 'wrong sort of intelligence'. For me, the deal-breaker is the lack of hardware compatibility. It will be claimed that MS are not responsible for drivers but, as the OS has the highest interdependency of any piece of software, an OS without drivers for anything but the most recent hardware is not fit for purpose, regardless of where the fault is laid. Vista is only recommendable to a person with either no, or very recent, hardware.

I am back to XP, with £150 on Vista mouldering on the other partition. This has been quite the most disappointing experience of 20+ years of computing.

Fraser

 

 


Reply:
It sounds like either you are really good at messing things up or your luck is just bad.  Maybe you should try switching to a Mac!  At least then you won't have to worry about you peripherals... Ha Ha!  Get it.  You've seen the add right?  But seriously how could you have SO MANY problems with Vista??  I built my own computer and ran a beta on it for the past six months and othe than no printer driver for my 3 YEAR OLD printer it has been great.  Try a FRESH install after you FORMAT the drive and then we'll talk.

------------------------------------
Reply:

You don't seem to have read either my post or much of this Forum with great care:

(a) My problems have been, quantitatively, modest compared with those experienced by many on this Forum

(b) Given that I alluded to having a dual-boot system ("I am back to XP, with £150 on Vista mouldering on the other partitionI"), you should have been able to work out that this was a FRESH install on a FORMATTED drive

(c) It is crass to extrapolate from your isolated experience to the general circumstance, and ill-mannered to assume that the problem is mine.

I don't think I want to talk to you, Bud.

Fraser


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

SQL Express 2005 installation fails on all of our PCs

The installation fails and crashes with "Error 110", while attempting to install the SQL Native Client... then crashes (DrWatson).  This happens on every OS and test machines that we have within our company... flavors of W2K and WXP, all with .Net Framework 2.0.

If the SQL Native Client exists, the installation continues without error.  If SQLEXPR32.EXE is run directly from the command line, the installation will succeed.

If SQLEXPR32.EXE is called from a Windows Installer Custom Action type 50, it will always fail.  This is the method we used to successfully install MSDE previously.

Our command line is:

/qb ADDLOCAL=SQL_Engine,SQL_Data_Files SAPWD=password1 SECURITYMODE=SQL DISABLENETWORKPROTOCOLS=2 INSTANCENAME=Instance SQLBROWSERAUTOSTART=1 SQLAUTOSTART=1 ENABLERANU=0

The problem appears to start with: Error: Action "ComponentUpdateAction" threw an exception during execution.

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

SQLSetup0009_Core.log

Microsoft SQL Server 2005 Setup beginning at Thu Mar 01 08:07:09 2007
Process ID      : 852
c:\57774bfc862c706a2e923076f41d037c\setup.exe Version: 2005.90.3042.0
Running: LoadResourcesAction at: 2007/2/1 8:7:9
Complete: LoadResourcesAction at: 2007/2/1 8:7:9, returned true
Running: ParseBootstrapOptionsAction at: 2007/2/1 8:7:9
Loaded DLL:c:\57774bfc862c706a2e923076f41d037c\xmlrw.dll Version:2.0.3609.0
Complete: ParseBootstrapOptionsAction at: 2007/2/1 8:7:9, returned true
Running: ValidateWinNTAction at: 2007/2/1 8:7:9
Complete: ValidateWinNTAction at: 2007/2/1 8:7:9, returned true
Running: ValidateMinOSAction at: 2007/2/1 8:7:9
Complete: ValidateMinOSAction at: 2007/2/1 8:7:9, returned true
Running: PerformSCCAction at: 2007/2/1 8:7:9
Complete: PerformSCCAction at: 2007/2/1 8:7:9, returned true
Running: ActivateLoggingAction at: 2007/2/1 8:7:9
Complete: ActivateLoggingAction at: 2007/2/1 8:7:9, returned true
Delay load of action "DetectPatchedBootstrapAction" returned nothing. No action will occur as a result.
Action "LaunchPatchedBootstrapAction" will be skipped due to the following restrictions:
Condition "EventCondition: __STP_LaunchPatchedBootstrap__852" returned false.
Running: PerformSCCAction2 at: 2007/2/1 8:7:9
Complete: PerformSCCAction2 at: 2007/2/1 8:7:9, returned true
Running: PerformDotNetCheck at: 2007/2/1 8:7:9
Complete: PerformDotNetCheck at: 2007/2/1 8:7:9, returned true
Running: ComponentUpdateAction at: 2007/2/1 8:7:9
Error: Action "ComponentUpdateAction" threw an exception during execution.  Error information reported during run:
<Func Name='UpdateComponents'>
SCU_SetupMgr::InitComponents()
<Func Name='SnacComp::Init'>
<Func Name='SnacComp::IsRequired'>
SNAC version installing: 9.00.3042.00
The installed SNAC version is less then the installing version
SCU_SetupMgr::svc() state=SS_INIT_DONE, cancel_state=0, is_done=0, ActionRequired=1, NeedReboot=0, custom_props={AutoStart=true
DotNetPatch=
HandleReboots=false
ModuleDir=c:\57774bfc862c706a2e923076f41d037c
QuietMode=false
SNACPatch=
SupportPatch=
Unattended=true
WorkDir=c:\57774bfc862c706a2e923076f41d037c
}} {e:\sql9_sp2_t\sql\setup\sqlcu\dll\scusetupmgr.cpp:506}
SCU_SetupMgr::InstallComponent state=INSTALL, cancel_state=0, is_done=0, ActionRequired=1, NeedReboot=0, custom_props={AutoStart=true
DotNetPatch=
HandleReboots=false
ModuleDir=c:\57774bfc862c706a2e923076f41d037c
QuietMode=false
SNACPatch=
SupportPatch=
Unattended=true
WorkDir=c:\57774bfc862c706a2e923076f41d037c
}} {e:\sql9_sp2_t\sql\setup\sqlcu\dll\scusetupmgr.cpp:384}
SCU_SetupMgr::InstallComponent state=INSTALL, cancel_state=0, is_done=0, ActionRequired=1, NeedReboot=0, custom_props={AutoStart=true
DotNetPatch=
HandleReboots=false
ModuleDir=c:\57774bfc862c706a2e923076f41d037c
QuietMode=false
SNACPatch=
SupportPatch=
Unattended=true
WorkDir=c:\57774bfc862c706a2e923076f41d037c
}} {e:\sql9_sp2_t\sql\setup\sqlcu\dll\scusetupmgr.cpp:384}
SCU_SetupMgr::InstallComponent state=INSTALL, cancel_state=0, is_done=0, ActionRequired=1, NeedReboot=0, custom_props={AutoStart=true
DotNetPatch=
HandleReboots=false
ModuleDir=c:\57774bfc862c706a2e923076f41d037c
QuietMode=false
SNACPatch=
SupportPatch=
Unattended=true
WorkDir=c:\57774bfc862c706a2e923076f41d037c
}} {e:\sql9_sp2_t\sql\setup\sqlcu\dll\scusetupmgr.cpp:384}
SCU_SetupMgr::InstallComponent state=INSTALL, cancel_state=0, is_done=0, ActionRequired=1, NeedReboot=0, custom_props={AutoStart=true
DotNetPatch=
HandleReboots=false
ModuleDir=c:\57774bfc862c706a2e923076f41d037c
QuietMode=false
SNACPatch=
SupportPatch=
Unattended=true
WorkDir=c:\57774bfc862c706a2e923076f41d037c
}} {e:\sql9_sp2_t\sql\setup\sqlcu\dll\scusetupmgr.cpp:384}
<Func Name='SnacComp::InstallImp'>
Failed to install SNAC
Failed to install SNAC : (110) {e:\sql9_sp2_t\sql\setup\sqlcu\dll\snaccomp.cpp:251}
SCU_SetupMgr::svc() caught exception: Failed to install SNAC : (110) {e:\sql9_sp2_t\sql\setup\sqlcu\dll\snaccomp.cpp:251}. SetupMgr: state=ERROR, cancel_state=0, is_done=0, ActionRequired=1, NeedReboot=0, custom_props={AutoStart=true
DotNetPatch=
HandleReboots=false
ModuleDir=c:\57774bfc862c706a2e923076f41d037c
QuietMode=false
SNACPatch=
SupportPatch=
Unattended=true
WorkDir=c:\57774bfc862c706a2e923076f41d037c
}} {e:\sql9_sp2_t\sql\setup\sqlcu\dll\scusetupmgr.cpp:520}
ScuProgressDlg::SetupFinished()
ScuProgressDlg::DialogProc() installation done... waiting for setup mgr
<EndFunc Name='UpdateComponents' Return='1603' GetLastError='87'>
Component update returned a fatal error : 110
        Error Code: 0x8007006e (110)
Windows Error Text: The system cannot open the device or file specified.

  Source File Name: sqlncli.msi
Compiler Timestamp: Thu Oct  5 12:22:33 2006
     Function Name: Unknown
Source Line Number: 1583

Class not registered.

 

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

SQLSetup0009_SNAC.log

=== Verbose logging started: 3/1/2007  8:07:10  Build type: SHIP UNICODE 3.01.4000.2435  Calling process: C:\WINDOWS\system32\msiexec.exe ===
MSI (c) (FC:C8) [08:07:10:062]: Resetting cached policy values
MSI (c) (FC:C8) [08:07:10:062]: Machine policy value 'Debug' is 0
MSI (c) (FC:C8) [08:07:10:062]: ******* RunEngine:
           ******* Product: c:\57774bfc862c706a2e923076f41d037c\setup\sqlncli.msi
           ******* Action:
           ******* CommandLine: **********
MSI (c) (FC:C8) [08:07:10:062]: Client-side and UI is none or basic: Running entire install on the server.
MSI (c) (FC:C8) [08:07:10:062]: Grabbed execution mutex.
MSI (c) (FC:C8) [08:07:10:109]: Cloaking enabled.
MSI (c) (FC:C8) [08:07:10:109]: Attempting to enable all disabled priveleges before calling Install on Server
MSI (c) (FC:C8) [08:07:10:125]: Incrementing counter to disable shutdown. Counter after increment: 0
MSI (s) (30:5C) [08:07:10:140]: Grabbed execution mutex.
MSI (s) (30:B0) [08:07:10:140]: Resetting cached policy values
MSI (s) (30:B0) [08:07:10:140]: Machine policy value 'Debug' is 0
MSI (s) (30:B0) [08:07:10:140]: ******* RunEngine:
           ******* Product: c:\57774bfc862c706a2e923076f41d037c\setup\sqlncli.msi
           ******* Action:
           ******* CommandLine: **********
MSI (s) (30:B0) [08:07:10:156]: Machine policy value 'DisableUserInstalls' is 0
MSI (s) (30:B0) [08:07:10:171]: Note: 1: 1309 2: 5 3: C:\57774bfc862c706a2e923076f41d037c\setup\sqlncli.msi
MSI (s) (30:B0) [08:07:10:171]: MainEngineThread is returning 110
The system cannot open the device or file specified.
MSI (c) (FC:C8) [08:07:10:171]: Decrementing counter to disable shutdown. If counter >= 0, shutdown will be denied.  Counter after decrement: -1
MSI (c) (FC:C8) [08:07:10:171]: MainEngineThread is returning 110
=== Verbose logging stopped: 3/1/2007  8:07:10 ===


Reply:

Can you confirm that you are only seeing this issue when you are attempting to run the SQLExpr32.exe package through a type 50 custom action?  The other use cases for this package are working for me?

Internally we have not tested the scenario you are describing and so I can't confirm that what you are doing is supported.  I know that we don't support launching our installers via RunAs or other means that rely on the process running as LocalSystem.  Depending on how you authored your custom action, that may be what is happening here.

Basically the account the Windows Installer service is running as (LocalSystem) does not have access to the path C:\57774bfc862c706a2e923076f41d037c\setup\sqlncli.msi, as it getting ERROR_ACCESS_DENIED.  You can see this from this line in the SNAC log:

MSI (s) (30:B0) [08:07:10:171]: Note: 1: 1309 2: 5 3: C:\57774bfc862c706a2e923076f41d037c\setup\sqlncli.msi

Can you post the details of the row in your CustomAction table that is running SQLExpr32.exe?  Also the lines from your product's MSI log that show when the Express package is run.


------------------------------------
Reply:

CustomAction table:

Action: InstallSqlExpressStandard

Type: 50

Source: SQLEXPRESS_SOURCE

Target: /qb ADDLOCAL=SQL_Engine,SQL_Data_Files SAPWD=[IS_SQLSERVER_PASSWORD] SECURITYMODE=SQL DISABLENETWORKPROTOCOLS=2 INSTANCENAME=[INSTANCE_NAME] SQLBROWSERAUTOSTART=1 SQLAUTOSTART=1 ENABLERANU=0

...where [IS_SQLSERVER_PASSWORD] and [INSTANCE_NAME] are placeholders.

 


Action 8:06:19: InstallSqlExpressStandard.
Action start 8:06:19: InstallSqlExpressStandard.
Error 1722.There was an error with this installation and it will not continue. Possible solutions: 1.) Reboot then retry this installation.  2.) Log on as an administrator then retry this installation.
MSI (c) (74:74) [08:45:09:937]: Product: XXXXXX 2007 -- Error 1722.There was an error with this installation and it will not continue. Possible solutions: 1.) Reboot then retry this installation.  2.) Log on as an administrator then retry this installation.

Action ended 8:45:09: InstallSqlExpressStandard. Return value 3.
DEBUG: Error 2896:  Executing action InstallSqlExpressStandard failed.
Internal Error 2896. InstallSqlExpressStandard

 

...the 1722 error text has been customized.  The only reason a 1722 error occurs is because I'm checking the return code and failing upon SQL Express installation failure.


------------------------------------
Reply:
The issue could be with the ACL on the folder where SNAC is extracted.  When the failure occurs, can you look at the ACL and see if LocalSystem has permissions on it?

------------------------------------
Reply:

Executing SqlExpr32.exe from the command line:

The setup files are extracted to c:\37d959697facdc6ba698cc0099e9a22e\... (for example).  The folders and files within all have permission to LocalSystem, but the root folder (c:\37d959697facdc6ba698cc0099e9a22e) doesn't have rights to the LocalSystem...which is probably not a problem.

 

Executing SqlExpr32.exe from a Windows Installer Custom Action:

The setup files are extracted to c:\37d959697facdc6ba698cc0099e9a22e\... (for example).  All files within this folder have LocalSystem permissions.  The folder "..\1033" and it's solo file have LocalSystem rights.  The folder "..\Setup" has LocalSystem rights, but all files within this folder do not have LocalSystem rights.


------------------------------------
Reply:
Ihave tested with the data from my previous post (via Windows Installer CA) on numerous WindowsXP machines (all sorts of different images), always producing the same results... the files within the extracted Setup directory don't have System permissions.  Although, I have just verified that on Windows 2K machines (I've only tested within two different W2K SP4 machines) the files within the extracted Setup directory do have the proper System permissions.

------------------------------------
Reply:

Any ideas on how to solve this issue?

Is there a better way for our appplications to install SQL Express 2005?

-Thanks


------------------------------------
Reply:

As we haven't tested this scenario internally it would be hard for me to suggest how to solve this.

But I would recommend using a different means to install SQL Express 2005.  Doing it via a type 50 custom action means it can only work in attended mode.  This is because in unattended mode your MSI would switch to the service instantly and grab the execution mutex.  That would prevent our setup from installing.

You are best off to write a bootstrap application in order to install SQLExpr either before or after your application's MSI is run, and not to do it from inside Windows Installer.

The program that extracts out the Express SKU is called SFXCab, and it isn't owned by my team.  So I'm not aware of why in your scenario it is ACL'ing the folder such that LocalSystem does not have access.


------------------------------------
Reply:

I solved this problem by having already extracted sqlexpr32.exe on CD and running its setup.exe from application's MSI via custom action type 50.

 

It's not an elegant solution of course and adds some 140 MB to all installation, but installing SQLExpress before or after application's MSI is run was simply unacceptable.


------------------------------------
Reply:

R. Green - MSFT. I have hit this problem and the installer program it was fired from is shelled out of a custom action, into a completely separate process. As soon as this program is shelled, the windows installer custom action ends and the user is told to click "Close" before continuing. Meaning that the windows installer process for the actual setup has finished, and now a second program is left running which downloads the sql installation (if the user requires).

 

Honestly, instead of saying "we haven't tested this scenario" - well we know that, but it should work in all scenarios - why can't you go test it, catch it in the debugger, and give us a decent workaround ? Millions of man hours are wasted every year because MS doesnt test its software properly, so please...help......

 

=== Verbose logging started: 8/2/2007  16:10:52  Build type: SHIP UNICODE 3.01.4000.2435  Calling process: C:\WINDOWS\system32\msiexec.exe ===
MSI (c) (BC:F8) [16:10:53:203]: Resetting cached policy values
MSI (c) (BC:F8) [16:10:53:203]: Machine policy value 'Debug' is 0
MSI (c) (BC:F8) [16:10:53:203]: ******* RunEngine:
           ******* Product: c:\1d41fe5a17ad2f39f02af3341c0d\setup\sqlncli.msi
           ******* Action:
           ******* CommandLine: **********
MSI (c) (BC:F8) [16:10:53:218]: Client-side and UI is none or basic: Running entire install on the server.
MSI (c) (BC:F8) [16:10:53:218]: Grabbed execution mutex.
MSI (c) (BC:F8) [16:10:53:640]: Cloaking enabled.
MSI (c) (BC:F8) [16:10:53:640]: Attempting to enable all disabled priveleges before calling Install on Server
MSI (c) (BC:F8) [16:10:53:718]: Incrementing counter to disable shutdown. Counter after increment: 0
MSI (s) (6C:48) [16:10:54:171]: Grabbed execution mutex.
MSI (s) (6C:24) [16:10:54:171]: Resetting cached policy values
MSI (s) (6C:24) [16:10:54:171]: Machine policy value 'Debug' is 0
MSI (s) (6C:24) [16:10:54:171]: ******* RunEngine:
           ******* Product: c:\1d41fe5a17ad2f39f02af3341c0d\setup\sqlncli.msi
           ******* Action:
           ******* CommandLine: **********
MSI (s) (6C:24) [16:10:54:328]: Machine policy value 'DisableUserInstalls' is 0
MSI (s) (6C:24) [16:10:54:531]: Note: 1: 1309 2: 5 3: c:\1d41fe5a17ad2f39f02af3341c0d\setup\sqlncli.msi
MSI (s) (6C:24) [16:10:54:546]: MainEngineThread is returning 110
The system cannot open the device or file specified.
MSI (c) (BC:F8) [16:10:54:546]: Decrementing counter to disable shutdown. If counter >= 0, shutdown will be denied.  Counter after decrement: -1
MSI (c) (BC:F8) [16:10:54:546]: MainEngineThread is returning 110
=== Verbose logging stopped: 8/2/2007  16:10:54 ===

 


------------------------------------
Reply:

Hi!

Here is solution:

Do not execute SQLEXPR.EXE directly.

Use for start in-line script. (Custom Action type - 38).

 

Code Snippet

const WinStyle = &H20000000
Set SQLExeFile = Session.Property("SourceDir") + "SQLEXPR.EXE " + Session.Property("SqlServerCommandPrompt")
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run SQLExeFile, WinStyle, true

 

 

Enjoy.

------------------------------------
Reply:

Hi!

Why did you set WinStyle to &H20000000? It should be int from 0~10.

 


------------------------------------
Reply:
WinUser.h

/*
* Window Styles
*/
#define WS_OVERLAPPED 0x00000000L
#define WS_POPUP 0x80000000L
#define WS_CHILD 0x40000000L
#define WS_MINIMIZE 0x20000000L <-------
#define WS_VISIBLE 0x10000000L
#define WS_DISABLED 0x08000000L
#define WS_CLIPSIBLINGS 0x04000000L
#define WS_CLIPCHILDREN 0x02000000L
#define WS_MAXIMIZE 0x01000000L
#define WS_CAPTION 0x00C00000L /* WS_BORDER | WS_DLGFRAME */
#define WS_BORDER 0x00800000L
#define WS_DLGFRAME 0x00400000L
#define WS_VSCROLL 0x00200000L
#define WS_HSCROLL 0x00100000L
#define WS_SYSMENU 0x00080000L
#define WS_THICKFRAME 0x00040000L
#define WS_GROUP 0x00020000L
#define WS_TABSTOP 0x00010000L

#define WS_MINIMIZEBOX 0x00020000L
#define WS_MAXIMIZEBOX 0x00010000L


#define WS_TILED WS_OVERLAPPED
#define WS_ICONIC WS_MINIMIZE
#define WS_SIZEBOX WS_THICKFRAME
#define WS_TILEDWINDOW WS_OVERLAPPEDWINDOW

 


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

Keyboard Layout Problem!!! (Vista Bug)

Hi! I'm new here, so sorry if have posted in wrong tread.

I have found a bug related with Ukrainian keyboard layout (Input Language). When I try to type in Ukrainian in some programs it types only "??????" (question signs). With Russian no problem (same encoding)! Then i made in Keyboard Layout Creator Ukrainian keyboard layout that apears to system like Russian (ukrainian charakters but in language bar it shows RU instead of UA). and with help of that i can input Ukrainian language.

Please help!!!


Reply:
Do you know if these are ANSI instead of Unicode applications?

------------------------------------
Reply:
Such a problem is in non unocode programs and in those that have unicode support in development or aren't officially vista compatible. For example Total Commander (ANSI) http://www.ghisler.com/ or QIP (Unicode) http://www.qip.ru/ have problems with ukrainian. Also I noticed this bug in some dialogs of MS Office 2007: in Outlook when entering name for e-mail account. When typing everithing is ok but when u send a message with this account user on other side doesn't see any name only "???????? ?????".

------------------------------------
Reply:
Microsoft!!! Sombody solve this problem? with Ukrainian layot?

------------------------------------
Reply:

I can't explain why it happens but I made my own solution which you can find here:

http://bohdan.rak.googlepages.com/ukrainianundervista

(Ukrainian keyboard layout based on Russian layout)

 

The page is in Ukrainian, but I suppose you'll understand Smile

 

Works pretty fine for me


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

Fix for Cellular Internet Connectivity in Vista (EDGE/GPRS/WWAN)

Upon upgrading a Sony Vaio (which includes a built-in Sony Ericsson GC75 EDGE / GPRS WWAN cellular modem), I was unable to connect to the internet.  I was able to get things running in the mean time while the drivers/programs are being updated and are not yet available.

1. Enabled the SmartWiService, and set it to start automatically.  Rebooted.

2. Created a link to the Cingular Connection Manager in the Quick Launch toolbar, and set it to run as administrator.  Started the CCM and configured it to use "Optimized EDGE/GPRS value" under advanced networking.  (Doing so verified that the CCM could save its settings.)  Also told it to connect using "EDGE/GPRS Accelerated", as it had lost this setting.

M.

Angry about Reporting Services

I have seen the odd thread on here that just mentions in passing that data-driven subscriptions are only available on the SQL 2005 Enterprise edition. Does no-one else but me think that this is absolutely disgraceful? We bought SQL Server Standard for our 2 processor server and it cost just under £8,000. The only reason we would have to buy Enterprise is for the data-driven subscriptions in RS and that would cost us £33,000. When the beta of RS came out, it had data-driven subscriptions at all levels. When RS 2000 came out, we could easily get a legitimate copy of RS 2000 Enterprise from Microsoft and have the same functionality. Now we have to pay £25,000 for the privilege or hand-code the whole thing. I repeat; this is an absolutely disgraceful piece of profiteering from Microsoft. Do they really think that data-driven subscriptions are only of value to people using the Enterprise edition?

Reply:

This forum is intended for assistance and bug reporting with RS. Call customer support if you're that upset about the product. What do you expect them to do? Give it to you for free now because you're angry? 

I think it is disgraceful that you would use an open forum to vent about a product that you purchased which is documented as to what it includes and what it does not include.

 


------------------------------------
Reply:

I think it's disgraceful that a product which was in all versions of the beta and freely available in SQL 2000, now costs me £25,000 in SQL 2005. Don't you?

As I believe this forum is read by Microsoft developers, maybe I thought they could give me a rational response. If you know of a place where I can get a better response, or where I ought to post this, please let me know. It is not my intention to upset anyone on the forum, just to let Microsoft know how I feel about their product.


------------------------------------
Reply:

Leaving strong words aside, I think your complaint is not unreasonble and it is good to provide this kind of feedback. Crossing the enterprise hefty price tag is not an easy sell especially for vendors. I tend to agree with you we are suffering from an "enterprise" identity crisis and thus the meaning of enerprise should be better scoped out. IMO, enterprise editions should differ only in the areas of scalability and to some extend extensibility in order to meet high loads and more involved integration requirements of large companies. Following this line of thought, I'd say that web farm deployment and partitioning are definately enterprise-level features while features like data-driven subscriptions and semi-additive measures (SSAS) are probably not.

From BOL: "Enterprise Edition scales to the performance levels required to support the largest enterprise online transaction processing (OLTP), highly complex data analysis, data warehousing systems, and Web sites. Enterprise Edition's comprehensive business intelligence and analytics capabilities and its high availability features such as failover clustering allow it to handle the most mission critical enterprise workloads. Enterprise Edition is the most comprehensive edition of SQL Server and is ideal for the largest organizations and the most complex requirements."


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

Report Designer Dynamic Filter

I have a requirement to add the ability to filter a report by partial last name, at the report level (i.e. not at the database server). In case someone else needs to work out how to do this, here is what I did.

  1. Add a Parameter to the report. In my case it is named LastName, is non-queried, allows Null or Blank, and has a default of null.
  2. Add a filter to the dataset that contains the field to be searched. Set its Expression to:
    =IIF(Parameters!LastName.Value = System.DBNull.Value OR Parameters!LastName.Value = "",
    Fields!LastName.Value, Nothing)
     ,
    its operator to "="
    and its value to =IIF(Parameters!LastName.Value = Nothing OR Parameters!LastName.Value = "", Nothing, Parameters!LastName.Value & "*")

voila!

Helen


Reply:

I'm not sure I fully understand. What exactly does this do?

Would this have the same effect as using a query with a parameter for lastname (@lastname) where lastname LIKE @lastname + "%"?


------------------------------------
Reply:

It allows me to make entering a value for the parameter optional. If the user does not want to filter by last name, my filter expression still has to work. I got it to work by using an expression for both the filter and its value, and returning Nothing for both when the value is null or empty.

When using an expression for the filter, the LIKE option for the comparator is disabled, so I had to use = as the operator.


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

Did you know....

... that dates within restrictions do not have to be in xs:dateTime format?  They can be in any format that DateTime.Parse will allow.  For instance:

<Restriction>
   <t:IsGreaterThanOrEqualTo>
         <t:FieldURI FieldURI="item:DateTimeReceived"/>
         <t:FieldURIOrConstant>
                <t:Constant Value="02/26/2007"/>
         </t:FieldURIOrConstant>
   </t:IsGreaterThanOrEqualTo>
</Restriction>

...is completely valid.

Now, that being said, the parsing occurs using CultureInfo.InvariantCulture, so unfortunately it doesn't take into account the value of the MailboxCulture soap header, so if you try to pass in the day as the first part, you are out of luck.  But as is, it is already more flexible than the xs:DateTime format. 

Also, if not offset qualified, UTC is assumed.

To see the formats that DateTime.Parse can handle look in MSDN.

 

Now, when dealing with the proxy, ConstantValueType surfaces a Value property of type string.  So you could just do the following there:

ConstantValueType constant = new ConstantValueType();

constant.Value = DateTime.Now.ToString();

 


 

No comments:

Post a Comment

Setup is Split Across Multiple CDs

Setup is Split Across Multiple CDs Lately I've seen a bunch of people hitting installation errors that have to do with the fact th...