|
code
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
Re: How to get the File PropertiesI've tried this in Visual Basic 2008 Express and can't get it to work. If I create a VB Script file from this code and run it the output is fine. When I type Set sa = CreateObject("Shell.Application") into the IDE, as soon as I press enter or move of the line it removes Set from the command. If I try and run the code it gives me an error that an object must be set in order to continue. WTF? I had to learn how to use the "replacement" for CreateObject("FileSystemObject") in VB 2008 but I can't find any information or samples of what the new syntax is for Shell.Application. This is most frustrating. It would seem that something so easy to do in VBScript should not prove to be this challenging in Visual Basic...or maybe it's just me. Thanks WD Show quoteHide quote "Larry Serflaten" wrote: > > "aushknotes" <aushkno***@discussions.microsoft.com> wrote > > How can I retrieve the file properties like title, category, comments and > > alike on the Summary tab when you right-click a file | Properties from the > > explorer? Is there any Win23 API that will return these values? Tried > > GetAttr, FileSystemObject, DSO but none returns the required values. Many > > thanks in advance! > > > See if this helps... > > LFS > > > Private Sub Command1_Click() > Dim cap(35) > Dim sa, fld, nam, i > > ' Get shell object > Set sa = CreateObject("Shell.Application") > ' Get desired folder > Set fld = sa.Namespace("C:\Temp") > > ' Get property names > For i = 0 To 34 > cap(i) = Right(Space(30) & fld.GetDetailsOf(fld.Items, i), 25) > Next > > ' Show property values > For Each nam In fld.Items > Debug.Print nam.Name, "- - - - - - - - -" > For i = 0 To 34 > Debug.Print cap(i); ": "; fld.GetDetailsOf(nam, i) > Next > Next > > End Sub > > > You're mixing 3 VBs. VBScript uses FSO and Shell.App.
VB has its own file operations that are better than FSO, and it generally uses the Shell object early-bound, if at all. VB 2008 is VB.Net, which is completely different from VB, despite the name. It mainly uses the Java-esque object model of the .Net Framework. It's not primarily designed for COM, nor for Windows Shell operations. It's a Java clone designed for "web apps". This group is for VB. If you want VBScript try: microsoft.public.scripting.vbscript If you want .Net try: microsoft.public.dotnet.languages.vb (Note that the .Net groups usually have "dotnet" in the name.) If you're using .Net you probably want to find out how to do things with the .Net Framework. It doesn't make much sense to limit yourself to the functionality of VBScript, trying to repackage your VBS into a .Net "assembly". ...Or, just stick with the VBS. It works and will save you from over 300 MB of dependency files required by .Net 2008. Show quoteHide quote | I've tried this in Visual Basic 2008 Express and can't get it to work. If I | create a VB Script file from this code and run it the output is fine. When I | type Set sa = CreateObject("Shell.Application") into the IDE, as soon as I | press enter or move of the line it removes Set from the command. If I try | and run the code it gives me an error that an object must be set in order to | continue. WTF? | | I had to learn how to use the "replacement" for | CreateObject("FileSystemObject") in VB 2008 but I can't find any information | or samples of what the new syntax is for Shell.Application. This is most | frustrating. It would seem that something so easy to do in VBScript should | not prove to be this challenging in Visual Basic...or maybe it's just me. | | Thanks | | WD | | "Larry Serflaten" wrote: | | > | > "aushknotes" <aushkno***@discussions.microsoft.com> wrote | > > How can I retrieve the file properties like title, category, comments and | > > alike on the Summary tab when you right-click a file | Properties from the | > > explorer? Is there any Win23 API that will return these values? Tried | > > GetAttr, FileSystemObject, DSO but none returns the required values. Many | > > thanks in advance! | > | > | > See if this helps... | > | > LFS | > | > | > Private Sub Command1_Click() | > Dim cap(35) | > Dim sa, fld, nam, i | > | > ' Get shell object | > Set sa = CreateObject("Shell.Application") | > ' Get desired folder | > Set fld = sa.Namespace("C:\Temp") | > | > ' Get property names | > For i = 0 To 34 | > cap(i) = Right(Space(30) & fld.GetDetailsOf(fld.Items, i), 25) | > Next | > | > ' Show property values | > For Each nam In fld.Items | > Debug.Print nam.Name, "- - - - - - - - -" | > For i = 0 To 34 | > Debug.Print cap(i); ": "; fld.GetDetailsOf(nam, i) | > Next | > Next | > | > End Sub | > | > | > Mayayana formulated the question :
> You're mixing 3 VBs. <snip>Actually, the code Larry posted runs in vb.net with just a couple of minor modifactions: Dim cap(35) Dim sa, fld, nam, i ' Get shell object sa = CreateObject("Shell.Application") ' Get desired folder fld = sa.Namespace("C:\Temp") ' Get property names For i = 0 To 34 cap(i) = Microsoft.VisualBasic.Right(Space(30) & fld.GetDetailsOf(fld, i), 25) Next ' show property values For Each nam In fld.items Debug.Print(nam.name, "- - - - - - - - -") For i = 0 To 34 Debug.Print(cap(i) & ": " & fld.getdetailsof(nam, i)) Next Next -- Tom Shelton "Tom Shelton" <tom_shelton@comcast.invalid> wrote in message Off topic and inappropriate Skelton. This is a classic VB group, not a dot news:i4eo34$nt$1@news.eternal-september.org... : : Actually, the code Larry posted runs in vb.net with just a couple of : minor modifactions: next how to. The OP has been given a link to the appropriate forum. Everything else is purposeful trolling and deliberate troublemaking. But you already knew that, didn't you? Which is why you did it. wh*re. | The VBScript cod Larry posted.| Actually, the code Larry posted runs in vb.net with just a couple of | minor modifactions: | I wondered if you might show up to post something like this. Remember when someone asked this awhile back on the .Net group? You offered an Interop wrapper for VBScript and said you'd be back with .Net shell code. But it never materialized. I find it nothing less than astonishing that you would *brag* about being able to wrap VBScript functionality in .Net. Q: I need to get my groceries from the car to my kitchen. Any ideas? Tom Shelton: Yes, you could load them onto a helicopter, fly around to the kitchen window, then hover there while you unload the groceries. Q: But that seems like overkill. Isn't there an easier way? Tom Shelton: The helicopter is the recommended way. It's the latest technology. And it's really not as involved as you think. Helicopter rentals are pretty cheap these days. .....So, no reason not to burn up a couple hundred MB of RAM by wrapping a VBScript in a .Net slop wrapper. ....After all, RAM prices have gone way down in the past few years, right? Mayayana wrote on 8/17/2010 :
>> That was VB6 code he posted... Do you even know VB6? Sometimes, the >> Actually, the code Larry posted runs in vb.net with just a couple of >> minor modifactions: >> > > The VBScript cod Larry posted. things you say make me wonder. Like no sub main in an activex exe... He is calling CreateObject and using late binding to use the object. That's valid in VB6 as well as VBScript - and guess what, VB.NET. I'm perfectly able to bind to any COM object on the system. In fact, VB.NET can directly use whole classes of COM objects not directly accessible to VB6. So, in some ways is actually superior when dealing with COM then is VB6. > I wondered if you might show up to post something Yes.> like this. Remember when someone asked this awhile > back on the .Net group? >You offered an Interop What are you talking about? It most certainly did. You have a bad > wrapper for VBScript and said you'd be back with .Net > shell code. But it never materialized. memory, I suggest you go back and look that up. Remember, I converted your little sample app (all except one piece that was irrelavent to the functionality being discussed), because you were complaining about it being late bound... And you got all pissy because I said your code sucked (which it did - very disorganized, poorly named variables, and riddled with the old Dim i, x, y as integer mistake that ametuer vb coders make). >I find it nothing I'm not bragging about anything - I was just showing you what an idiot > less than astonishing that you would *brag* about being > able to wrap VBScript functionality in .Net. you are when it comes to anything to do with .NET. That your diatribe besides being pointless, was incorrect. You make it sound like VB.NET can't use COM - when in fact it can. That's what I was showing, in fact, I used it in the same EXACT way that Larry did in VB6... VB6 NOT VBScript. There's another thing about VB.CLASSIC you apparently don't get - Late vs. Early binding. -- Tom Shelton Tom,
With full respect, for whom are you writing all those words? I've no problem with a discussion with you. But I expect that at the end one of us write something like: I agree (from the focus you show or whatever) with your vision. Those who now reply to you, are to chicken to write that here; afraid that somebody thinks they are no part of the clique of this newsgroup anymore . Cor Show quoteHide quote "Tom Shelton" <tom_shelton@comcast.invalid> wrote in message news:i4fetc$q6n$1@news.eternal-september.org... > Mayayana wrote on 8/17/2010 : >>> >>> Actually, the code Larry posted runs in vb.net with just a couple of >>> minor modifactions: >>> >> >> The VBScript cod Larry posted. > > That was VB6 code he posted... Do you even know VB6? Sometimes, the > things you say make me wonder. Like no sub main in an activex exe... He > is calling CreateObject and using late binding to use the object. That's > valid in VB6 as well as VBScript - and guess what, VB.NET. > > I'm perfectly able to bind to any COM object on the system. In fact, > VB.NET can directly use whole classes of COM objects not directly > accessible to VB6. So, in some ways is actually superior when dealing > with COM then is VB6. > >> I wondered if you might show up to post something >> like this. Remember when someone asked this awhile >> back on the .Net group? > > Yes. > >>You offered an Interop >> wrapper for VBScript and said you'd be back with .Net >> shell code. But it never materialized. > > What are you talking about? It most certainly did. You have a bad > memory, I suggest you go back and look that up. > > Remember, I converted your little sample app (all except one piece that > was irrelavent to the functionality being discussed), because you were > complaining about it being late bound... And you got all pissy because I > said your code sucked (which it did - very disorganized, poorly named > variables, and riddled with the old Dim i, x, y as integer mistake that > ametuer vb coders make). > >>I find it nothing >> less than astonishing that you would *brag* about being >> able to wrap VBScript functionality in .Net. > > I'm not bragging about anything - I was just showing you what an idiot you > are when it comes to anything to do with .NET. That your diatribe besides > being pointless, was incorrect. You make it sound like VB.NET can't use > COM - when in fact it can. That's what I was showing, in fact, I used it > in the same EXACT way that Larry did in VB6... VB6 NOT VBScript. > > There's another thing about VB.CLASSIC you apparently don't get - Late vs. > Early binding. > > -- > Tom Shelton > > > On Aug 18, 12:05 am, "Cor" <Notmyfirstn***@planet.nl> wrote: You know, Cor - that's a really good question. It appears most of the> Tom, > > With full respect, for whom are you writing all those words? > old timers have gone (Except for Larry and Mike). The activity is dropping like a rock here. So, to be perfectly honest... I don't know :) I suppose after all of these years, it might be time to move on... I will have to think about it. -- Tom Shelton | >You offered an Interop Oh? If that's the case then you have code for a .Net| > wrapper for VBScript and said you'd be back with .Net | > shell code. But it never materialized. | | What are you talking about? It most certainly did. Framework alternative to the Shell object already written. So why don't you offer that to saftheonly -- and discuss it in the .Net group -- rather than hanging around here arguing about .Net wrappers? You've become so vitriolic that you're in this group hurling insults most of the time, when you could actually be talking about .Net in the .Net groups, where it might help others. On Aug 18, 6:26 am, "Mayayana" <mayay...@invalid.nospam> wrote: That makes no sense at all... Why would anyone want to write an> | >You offered an Interop > | > wrapper for VBScript and said you'd be back with .Net > | > shell code. But it never materialized. > | > | What are you talking about? It most certainly did. > > Oh? If that's the case then you have code for a .Net > Framework alternative to the Shell object already > written. alternative to the Shell object? If we need the shell object in .NET we use it the same way as way as we did in VB6. We either use createobject and late binding, or we open a add references dialog and add the reference. What is it with you and the notion that COM can't be used in .NET? -- Tom Shelton > | >You offered an Interop That makes no sense at all... Why would anyone want to write an> | > wrapper for VBScript and said you'd be back with .Net > | > shell code. But it never materialized. > | > | What are you talking about? It most certainly did. > > Oh? If that's the case then you have code for a .Net > Framework alternative to the Shell object already > written. alternative to the Shell object? If we need the shell object in .NET we use it the same way as way as we did in VB6. We either use createobject and late binding, or we open a add references dialog and add the reference. What is it with you and the notion that COM can't be used in .NET? > I never said that. I just thought that maybe .Nethad it's own functions. That's actually what the posting from back when was about...The one that you've so creatively recalled. I had questioned you wrapping a VBScript in .Net interop and you said it could also be done in .Net ...that you'd post code for the OP...but you never did. So now I guess I know why: .Net has no native objects for the Windows shell. ...I guess that makes sense, huh, seeing as how it's designed for web apps? :) Mayayana used his keyboard to write :
Show quoteHide quote >>>> You offered an Interop It has a lot of functions and classes - but not everything is covered, >>>> wrapper for VBScript and said you'd be back with .Net >>>> shell code. But it never materialized. >>> >>> What are you talking about? It most certainly did. >> >> Oh? If that's the case then you have code for a .Net >> Framework alternative to the Shell object already >> written. > > That makes no sense at all... Why would anyone want to write an > alternative to the Shell object? If we need the shell object in .NET > we use it the same way as way as we did in VB6. We either use > createobject and late binding, or we open a add references dialog and > add the reference. > > What is it with you and the notion that COM can't be used in .NET? >> > > I never said that. I just thought that maybe .Net > had it's own functions. nor can it ever be. That's why .NET has COM support and the ability to call native API's. > That's actually what the I have the project right here. And I explained to you then as I did > posting from back when was about...The one that > you've so creatively recalled. now - you simply add the reference. > I had questioned Using late binding and adding a reference IS doing it in .NET.> you wrapping a VBScript in .Net interop and you > said it could also be done in .Net > ...that you'd post code I'm pretty sure I posted a link to the code. If I didn't - it's > for the OP...but you never did. because you were still going on about how the framework doesn't have a shell object, yada' yada' yada'. I'm sure it was just pointless. > So now I guess I know That is one purpose yes. But, .NET also has windows forms and WPF - > why: .Net has no native objects for the Windows > shell. ...I guess that makes sense, huh, seeing as > how it's designed for web apps? :) decidedly NOT web app classes. Also - VB6 has no native shell functions either - you have to use the shell object in the same way, add the reference or use createobject and late binding... -- Tom Shelton
Show quote
Hide quote
"Tom Shelton" <tom_shelton@comcast.invalid> skrev i meddelandet Siiigghhh, not specifically pointed to Tom.news:i4hrki$u28$1@news.eternal-september.org... > Mayayana used his keyboard to write : >>>>> You offered an Interop >>>>> wrapper for VBScript and said you'd be back with .Net >>>>> shell code. But it never materialized. >>>> >>>> What are you talking about? It most certainly did. >>> >>> Oh? If that's the case then you have code for a .Net >>> Framework alternative to the Shell object already >>> written. >> >> That makes no sense at all... Why would anyone want to write an >> alternative to the Shell object? If we need the shell object in .NET >> we use it the same way as way as we did in VB6. We either use >> createobject and late binding, or we open a add references dialog and >> add the reference. >> >> What is it with you and the notion that COM can't be used in .NET? >>> >> >> I never said that. I just thought that maybe .Net >> had it's own functions. > > It has a lot of functions and classes - but not everything is covered, nor > can it ever be. That's why .NET has COM support and the ability to call > native API's. > >> That's actually what the >> posting from back when was about...The one that >> you've so creatively recalled. > > I have the project right here. And I explained to you then as I did now - > you simply add the reference. > >> I had questioned >> you wrapping a VBScript in .Net interop and you >> said it could also be done in .Net > > Using late binding and adding a reference IS doing it in .NET. > >> ...that you'd post code >> for the OP...but you never did. > > I'm pretty sure I posted a link to the code. If I didn't - it's because > you were still going on about how the framework doesn't have a shell > object, yada' yada' yada'. I'm sure it was just pointless. > >> So now I guess I know >> why: .Net has no native objects for the Windows >> shell. ...I guess that makes sense, huh, seeing as >> how it's designed for web apps? :) > > That is one purpose yes. But, .NET also has windows forms and WPF - > decidedly NOT web app classes. > > Also - VB6 has no native shell functions either - you have to use the > shell object in the same way, add the reference or use createobject and > late binding... > > -- > Tom Shelton > > Where is the interest in comparing apples and pears. If I got it right, no-one here is interested in dotnet, so why keep dragging it up all the time? Do we gain anything by picking on those who use it. To Tom: As I recall it, ALL agreed that this grp *is* for VB6 and lower. Why then post dotnet code? Is it really that fun to tease? /Henning on 8/18/2010, Henning supposed :
Show quoteHide quote > "Tom Shelton" <tom_shelton@comcast.invalid> skrev i meddelandet It wasn't about teasing, it was about correcting misinformation.> news:i4hrki$u28$1@news.eternal-september.org... >> Mayayana used his keyboard to write : >>>>>> You offered an Interop >>>>>> wrapper for VBScript and said you'd be back with .Net >>>>>> shell code. But it never materialized. >>>>> >>>>> What are you talking about? It most certainly did. >>>> >>>> Oh? If that's the case then you have code for a .Net >>>> Framework alternative to the Shell object already >>>> written. >>> >>> That makes no sense at all... Why would anyone want to write an >>> alternative to the Shell object? If we need the shell object in .NET >>> we use it the same way as way as we did in VB6. We either use >>> createobject and late binding, or we open a add references dialog and >>> add the reference. >>> >>> What is it with you and the notion that COM can't be used in .NET? >>>> >>> >>> I never said that. I just thought that maybe .Net >>> had it's own functions. >> >> It has a lot of functions and classes - but not everything is covered, nor >> can it ever be. That's why .NET has COM support and the ability to call >> native API's. >> >>> That's actually what the >>> posting from back when was about...The one that >>> you've so creatively recalled. >> >> I have the project right here. And I explained to you then as I did now - >> you simply add the reference. >> >>> I had questioned >>> you wrapping a VBScript in .Net interop and you >>> said it could also be done in .Net >> >> Using late binding and adding a reference IS doing it in .NET. >> >>> ...that you'd post code >>> for the OP...but you never did. >> >> I'm pretty sure I posted a link to the code. If I didn't - it's because >> you were still going on about how the framework doesn't have a shell >> object, yada' yada' yada'. I'm sure it was just pointless. >> >>> So now I guess I know >>> why: .Net has no native objects for the Windows >>> shell. ...I guess that makes sense, huh, seeing as >>> how it's designed for web apps? :) >> >> That is one purpose yes. But, .NET also has windows forms and WPF - >> decidedly NOT web app classes. >> >> Also - VB6 has no native shell functions either - you have to use the shell >> object in the same way, add the reference or use createobject and late >> binding... >> >> -- Tom Shelton >> >> > > Siiigghhh, not specifically pointed to Tom. > > Where is the interest in comparing apples and pears. If I got it right, > no-one here is interested in dotnet, so why keep dragging it up all the time? > Do we gain anything by picking on those who use it. > > To Tom: > As I recall it, ALL agreed that this grp *is* for VB6 and lower. Why then > post dotnet code? Is it really that fun to tease? > > /Henning -- Tom Shelton "Tom Shelton" <tom_shelton@comcast.invalid> wrote in message Complete lie.news:i4hu55$7p0$1@news.eternal-september.org... : : It wasn't about teasing, it was about correcting misinformation. The *real* Tom Shelton: I dont' care what you say or think. I will post any response anywhere I see fit. So, FOAD.
Show quote
Hide quote
"Tom Shelton" <tom_shelton@comcast.invalid> skrev i meddelandet But why is it so important to correct that in a group not aimed at dotnet?news:i4hu55$7p0$1@news.eternal-september.org... > on 8/18/2010, Henning supposed : >> "Tom Shelton" <tom_shelton@comcast.invalid> skrev i meddelandet >> news:i4hrki$u28$1@news.eternal-september.org... >>> Mayayana used his keyboard to write : >>>>>>> You offered an Interop >>>>>>> wrapper for VBScript and said you'd be back with .Net >>>>>>> shell code. But it never materialized. >>>>>> >>>>>> What are you talking about? It most certainly did. >>>>> >>>>> Oh? If that's the case then you have code for a .Net >>>>> Framework alternative to the Shell object already >>>>> written. >>>> >>>> That makes no sense at all... Why would anyone want to write an >>>> alternative to the Shell object? If we need the shell object in .NET >>>> we use it the same way as way as we did in VB6. We either use >>>> createobject and late binding, or we open a add references dialog and >>>> add the reference. >>>> >>>> What is it with you and the notion that COM can't be used in .NET? >>>>> >>>> >>>> I never said that. I just thought that maybe .Net >>>> had it's own functions. >>> >>> It has a lot of functions and classes - but not everything is covered, >>> nor can it ever be. That's why .NET has COM support and the ability to >>> call native API's. >>> >>>> That's actually what the >>>> posting from back when was about...The one that >>>> you've so creatively recalled. >>> >>> I have the project right here. And I explained to you then as I did >>> now - you simply add the reference. >>> >>>> I had questioned >>>> you wrapping a VBScript in .Net interop and you >>>> said it could also be done in .Net >>> >>> Using late binding and adding a reference IS doing it in .NET. >>> >>>> ...that you'd post code >>>> for the OP...but you never did. >>> >>> I'm pretty sure I posted a link to the code. If I didn't - it's because >>> you were still going on about how the framework doesn't have a shell >>> object, yada' yada' yada'. I'm sure it was just pointless. >>> >>>> So now I guess I know >>>> why: .Net has no native objects for the Windows >>>> shell. ...I guess that makes sense, huh, seeing as >>>> how it's designed for web apps? :) >>> >>> That is one purpose yes. But, .NET also has windows forms and WPF - >>> decidedly NOT web app classes. >>> >>> Also - VB6 has no native shell functions either - you have to use the >>> shell object in the same way, add the reference or use createobject and >>> late binding... >>> >>> -- Tom Shelton >>> >>> >> >> Siiigghhh, not specifically pointed to Tom. >> >> Where is the interest in comparing apples and pears. If I got it right, >> no-one here is interested in dotnet, so why keep dragging it up all the >> time? Do we gain anything by picking on those who use it. >> >> To Tom: >> As I recall it, ALL agreed that this grp *is* for VB6 and lower. Why then >> post dotnet code? Is it really that fun to tease? >> >> /Henning > > It wasn't about teasing, it was about correcting misinformation. > > -- > Tom Shelton > "Actually, the code Larry posted runs in vb.net with just a couple of minor modifactions:" When the OP is redirected to the correct group/forum there is, imo, no point anymore. /Henning ""saftheonly"" <"saftheon***@discussions.microsoft.com> wrote in message
news:E843C747-5D82-487C-83C2-89AA642AB406@microsoft.com... This group is for Classic Visual Basic (the latest version of which is VB6). > I've tried this in Visual Basic 2008 Express > and can't get it to work. The product you are using, Visual Basic 2008 Express, is something completely different and is something that is commonly referred to as VB.Net, although Micro$oft dropped the .Net part quite some time ago and just called it Visual Basic in a dishonest attempt to fool punters and to dishonestly cash in on the popularity of the real Visual Basic (VB6). You should post your questions relating to the imposter on one of the imposter's own newsgroups. The Micro$oft newsgroups, including the VB 2008 newsgroup, are of course dead in the water now, having been dropped by Micro$oft in favour of their new heavily policed social club advertising web forums where punters can post pretty pictures of their programming problems to each other and where they can say nice things about Micro$oft. I can't give you a link to any of them because I never use them myself, and I never shall do, but you should be able to find them with a bit of Googling. In fact, let me give you a bit of help with that . . . http://lmgtfy.com/?q=microsoft+%2Bsocial+%2Bforum+%2Bvisual+%2Bbasic Mike ""saftheonly"" <"saftheon***@discussions.microsoft.com> wrote in message
Show quoteHide quote news:E843C747-5D82-487C-83C2-89AA642AB406@microsoft.com... Larry's code is for Visual Basic 6. What you are using is not the same : Hi Larry, : : I've tried this in Visual Basic 2008 Express and can't get it to work. If I : create a VB Script file from this code and run it the output is fine. When I : type Set sa = CreateObject("Shell.Application") into the IDE, as soon as I : press enter or move of the line it removes Set from the command. If I try : and run the code it gives me an error that an object must be set in order to : continue. WTF? : : I had to learn how to use the "replacement" for : CreateObject("FileSystemObject") in VB 2008 but I can't find any information : or samples of what the new syntax is for Shell.Application. This is most : frustrating. It would seem that something so easy to do in VBScript should : not prove to be this challenging in Visual Basic...or maybe it's just me. : thing. It may carry the name Visual Basic, but the sytax is far from compatible with it's predecessor. This group does not support any version of VB after version 6. ""saftheonly"" <"saftheon***@discussions.microsoft.com> wrote in message
news:E843C747-5D82-487C-83C2-89AA642AB406@microsoft.com... By the way, regarding my initial response to this message in which I told > I've tried this in Visual Basic 2008 Express > and can't get it to work . . . you about Visual Basic 2008 being an imposter and in which I said that the Micro$oft newsgroups are dead in the water now, by "dead in the water" I did of course mean that they are dead in the water as far as Micro$oft is concerned, but they do of course live on in newsnet without the help of Micro$oft, although most of the dotnet people have gone over to the little MS web social clubs I told you about. Be careful what you say when you go there though, because those clubs are heavily policed by Micro$oft and you will probably get into trouble if you criticise them or any of their products. Mike Like Mayayana wrote,
You are mixing up different versions of Basic (luckily not BasicA), Larry gave you the code for Com versions of VB for which is this newsgroup. Try this forum for Net versions. http://social.msdn.microsoft.com/Forums/en-US/vbgeneral/threads?page=1 Success Cor ""saftheonly"" <"saftheon***@discussions.microsoft.com> wrote in message Show quoteHide quote news:E843C747-5D82-487C-83C2-89AA642AB406@microsoft.com... > Hi Larry, > > I've tried this in Visual Basic 2008 Express and can't get it to work. If > I > create a VB Script file from this code and run it the output is fine. > When I > type Set sa = CreateObject("Shell.Application") into the IDE, as soon as I > press enter or move of the line it removes Set from the command. If I try > and run the code it gives me an error that an object must be set in order > to > continue. WTF? > > I had to learn how to use the "replacement" for > CreateObject("FileSystemObject") in VB 2008 but I can't find any > information > or samples of what the new syntax is for Shell.Application. This is most > frustrating. It would seem that something so easy to do in VBScript > should > not prove to be this challenging in Visual Basic...or maybe it's just me. > > Thanks > > WD > > "Larry Serflaten" wrote: > >> >> "aushknotes" <aushkno***@discussions.microsoft.com> wrote >> > How can I retrieve the file properties like title, category, comments >> > and >> > alike on the Summary tab when you right-click a file | Properties from >> > the >> > explorer? Is there any Win23 API that will return these values? Tried >> > GetAttr, FileSystemObject, DSO but none returns the required values. >> > Many >> > thanks in advance! >> >> >> See if this helps... >> >> LFS >> >> >> Private Sub Command1_Click() >> Dim cap(35) >> Dim sa, fld, nam, i >> >> ' Get shell object >> Set sa = CreateObject("Shell.Application") >> ' Get desired folder >> Set fld = sa.Namespace("C:\Temp") >> >> ' Get property names >> For i = 0 To 34 >> cap(i) = Right(Space(30) & fld.GetDetailsOf(fld.Items, i), 25) >> Next >> >> ' Show property values >> For Each nam In fld.Items >> Debug.Print nam.Name, "- - - - - - - - -" >> For i = 0 To 34 >> Debug.Print cap(i); ": "; fld.GetDetailsOf(nam, i) >> Next >> Next >> >> End Sub >> >> >> Thank you for the "advise". With the exception of Cor and Mayayana I'm
surprised at the level of arrogance and disrespect that the rest of your answers displayed. If this is how newsgroups attempt to be helpful, I think I'll stick with Help Files. Enjoy your clique, perhaps you can also find one that deals with social skills. WD ""saftheonly"" wrote: Show quoteHide quote > Hi Larry, > > I've tried this in Visual Basic 2008 Express and can't get it to work. If I > create a VB Script file from this code and run it the output is fine. When I > type Set sa = CreateObject("Shell.Application") into the IDE, as soon as I > press enter or move of the line it removes Set from the command. If I try > and run the code it gives me an error that an object must be set in order to > continue. WTF? > > I had to learn how to use the "replacement" for > CreateObject("FileSystemObject") in VB 2008 but I can't find any information > or samples of what the new syntax is for Shell.Application. This is most > frustrating. It would seem that something so easy to do in VBScript should > not prove to be this challenging in Visual Basic...or maybe it's just me. > > Thanks > > WD > > "Larry Serflaten" wrote: > > > > > "aushknotes" <aushkno***@discussions.microsoft.com> wrote > > > How can I retrieve the file properties like title, category, comments and > > > alike on the Summary tab when you right-click a file | Properties from the > > > explorer? Is there any Win23 API that will return these values? Tried > > > GetAttr, FileSystemObject, DSO but none returns the required values. Many > > > thanks in advance! > > > > > > See if this helps... > > > > LFS > > > > > > Private Sub Command1_Click() > > Dim cap(35) > > Dim sa, fld, nam, i > > > > ' Get shell object > > Set sa = CreateObject("Shell.Application") > > ' Get desired folder > > Set fld = sa.Namespace("C:\Temp") > > > > ' Get property names > > For i = 0 To 34 > > cap(i) = Right(Space(30) & fld.GetDetailsOf(fld.Items, i), 25) > > Next > > > > ' Show property values > > For Each nam In fld.Items > > Debug.Print nam.Name, "- - - - - - - - -" > > For i = 0 To 34 > > Debug.Print cap(i); ": "; fld.GetDetailsOf(nam, i) > > Next > > Next > > > > End Sub > > > > > > ""saftheonly"" <saftheo***@discussions.microsoft.com> wrote in message
news:ABF67745-8460-402A-88B5-CCC9143E684E@microsoft.com... To whom are you addressing your response? You have not included any part of > Thank you for the "advise". With the exception of Cor > and Mayayana I'm surprised at the level of arrogance and > disrespect that the rest of your answers displayed. the message to which you are responding, and according to the way the messages are grouped in the thread it would appear that you are addressing your response to Mayayana, and yet you say that Mayayana is one of the people who you do not consider to have been arrogant. So why are you paraphrasing the word "advise" in your response to him, in an apparent attempt to indicate that it was not really advice at all? Are you really pissed off with Mayayana, or are you just confused, as you were confused about the group to which you were posting? Personally I would not have responded in the way I did were it not for the fact that this group is currently plagued by a number of idiotic dotnet evangelist trolls, such as Tom Shelton and Cor Ligthert and others, who keep posting deliberately provocative dotnet stuff, often under different names they invent for themselves, in what they know is a VB6 newsgroup. In the circumstances I thought that you might be one of those evangelist dotnet trolls, since this is the first time I have seen you post to this group and since you asked a dotnet question in a VB6 group. However, I apologise if I was wrong and if you are not a dotnet troll and you really did come here by mistake. By the way, why are you thanking us for some "advise"? What was your purpose in using the incorrect spelling for the word "advice"? Were you attempting to wind up somebody who had perhaps used that incorrect spelling in their response to you (if so then I have not seen that post in this thread), or was it just another mistake on your part? Mike | Thank you for the "advise". With the exception of Cor and Mayayana I'm You just unwittingly walked into a barroom brawl of sorts.| surprised at the level of arrogance and disrespect that the rest of your | answers displayed. If this is how newsgroups attempt to be helpful, I think | I'll stick with Help Files. | Microsoft has blurred the line between VB and VB.Net. For a long time they were trying to accomodate people who wanted to get into Windows programming. Now they're de-emphasizing 3rd-party, compiled Windows software, trying to steer developers toward web services. As part of that effort Microsoft is backing off from compiled languages and pushing their .Net Java clone. In order to herd VB people toward .Net they've posed VB.Net as a VB update and discontinued work on VB. VB and VB.Net have nothing in common except for the general appearance of the languages, but Microsoft doesn't want to admit that because they don't want to be obvious about their plan to shut out 3rd-party developers from Windows. They want those people to willingly decide, of their own accord, that web services is the next big thing and to make the move to .Net, Silverlight, and web-hosting on Microsoft's Azure system. So a lot of people are understandably confused. Many feel betrayed by Microsoft. Many are frustrated with Microsoft not being honest about their intentions. ...Many others want to follow Microsoft's lead wherever it goes and don't like other people making waves... And in the midst of it all, many are confused about what "VB" is. Those people often end up here and get caught in the crossfire.
Show quote
Hide quote
"Mayayana" <mayayana@invalid.nospam> wrote in message The sad and unfortunate face it, if eggheads like Tom, Paul and that racist news:i4fe2v$nrd$1@news.eternal-september.org... : You just unwittingly walked into a barroom brawl of sorts. : Microsoft has blurred the line between VB and VB.Net. : For a long time they were trying to accomodate people who : wanted to get into Windows programming. Now they're : de-emphasizing 3rd-party, compiled Windows software, trying : to steer developers toward web services. As part of that : effort Microsoft is backing off from compiled languages : and pushing their .Net Java clone. : : In order to herd VB : people toward .Net they've posed VB.Net as a VB update and : discontinued work on VB. VB and VB.Net have nothing : in common except for the general appearance of the languages, : but Microsoft doesn't want to admit that because they don't : want to be obvious about their plan to shut out 3rd-party : developers from Windows. They want those people to : willingly decide, of their own accord, that web services is : the next big thing and to make the move to .Net, Silverlight, : and web-hosting on Microsoft's Azure system. : : So a lot of people are understandably confused. Many feel : betrayed by Microsoft. Many are frustrated with Microsoft : not being honest about their intentions. ...Many others want : to follow Microsoft's lead wherever it goes and don't like : other people making waves... And in the midst of it all, many : are confused about what "VB" is. Those people often end up : here and get caught in the crossfire. bitch Cory simply stayed within their self proclaimed "superior" web based forum, there really would be no conflict. Dot next questions would be redirected by those who do so and that would be that. But no, they continue to stalk this community, looking for any excuse to stir the pot. They are the ones to blame for the current state of affairs here, and they know it. When they chose to stop, it will all be over. Mayayana pretended :
Show quoteHide quote >> Thank you for the "advise". With the exception of Cor and Mayayana I'm LOL... You are so paranoid it's not even funny. The day that MS shuts >> surprised at the level of arrogance and disrespect that the rest of your >> answers displayed. If this is how newsgroups attempt to be helpful, I >> think I'll stick with Help Files. >> > > You just unwittingly walked into a barroom brawl of sorts. > Microsoft has blurred the line between VB and VB.Net. > For a long time they were trying to accomodate people who > wanted to get into Windows programming. Now they're > de-emphasizing 3rd-party, compiled Windows software, trying > to steer developers toward web services. As part of that > effort Microsoft is backing off from compiled languages > and pushing their .Net Java clone. > > In order to herd VB > people toward .Net they've posed VB.Net as a VB update and > discontinued work on VB. VB and VB.Net have nothing > in common except for the general appearance of the languages, > but Microsoft doesn't want to admit that because they don't > want to be obvious about their plan to shut out 3rd-party > developers from Windows. They want those people to > willingly decide, of their own accord, that web services is > the next big thing and to make the move to .Net, Silverlight, > and web-hosting on Microsoft's Azure system. > > So a lot of people are understandably confused. Many feel > betrayed by Microsoft. Many are frustrated with Microsoft > not being honest about their intentions. ...Many others want > to follow Microsoft's lead wherever it goes and don't like > other people making waves... And in the midst of it all, many > are confused about what "VB" is. Those people often end up > here and get caught in the crossfire. out 3rd party developers to windows, is the day that Linux becomes the A-team on the desktop. ..NET not only doesn't shut you out of windows, it gives you superior access then to what even VB6 had.. cdecl, unions, unicode calls, 64-bit abilities... -- Tom Shelton "Tom Shelton" <tom_shelton@comcast.invalid> wrote in message Access...LOL. The same way Americans have access in Chine.news:i4fid8$4lr$1@news.eternal-september.org... : : LOL... You are so paranoid it's not even funny. The day that MS shuts : out 3rd party developers to windows, is the day that Linux becomes the : A-team on the desktop. : : .NET not only doesn't shut you out of windows, it gives you superior : access then to what even VB6 had.. cdecl, unions, unicode calls, : 64-bit abilities... Everything you list has a price, Raymond. One only fan bois like you want to pay. If cdecl really means that much to you. A couple of clever calls to VB6 and I can call cdecls too, and unions, and unicode calls. I'm sure in time someone will come up with a way to come up with a way to thunk 64 bit stuff...so really, I'm not worried, or willing to sell my soul to do it MSFT's way...which is on it's way out. But since your code base means nothing to you (or is it because it's Ingenix's code?), what do you care? The more I get to know you, the more I think you are indeed a waste of life. "Tom Shelton" <tom_shelton@comcast.invalid> wrote in message Actually the crazy deranged monkey who is running Micro$oft at the moment, news:i4fid8$4lr$1@news.eternal-september.org... > The day that MS shuts out 3rd party developers > to windows, is the day that Linux becomes the > A-team on the desktop. the monkey that easily led "camp followers" such as yourself drool over at meetings, is capable of doing anything, whether it is rational or not. He doesn't (at the moment!) want to shut out /all/ developers, although he is very definitely leaning towards shutting out developers who are not writing stuff for delivery over the web. It's sad that, because at one time the crazy deranged monkey was quite keen on all developers: http://www.youtube.com/watch?v=8To-6VIJZRE However, he does want to shut out, or at least seriously undermine, those people who want to develop fully compiled execs that sit on the user's system and that can be used at any time, with or without an internet connection. He is now heading towards a brave new world of web developers where most applications that people run are delivered over the internet, where Micro$oft can cream off some of the profits for themselves. In fact rumour has it that for the next version of Windows they are looking at the name Windows PayAsYouGo® :-) The dotnet stuff is nowhere near that point at the moment of course, but it is clearly "the thin end of the wedge". Mike | In fact I hadn't heard about that, so I looked it up.| rumour has it that for the next version of Windows they are looking at the | name Windows PayAsYouGo® :-) | Turns out they filed for a patent about 7 months ago, including a detailed expalantion of the plan: http://www.computerworld.com/s/article/9124459/Microsoft_specs_out_pay_as_you_go_PC_scheme It's a doozie. You'd have to buy the PC, but a locking chip like the Palladium idea... http://www.cl.cam.ac.uk/~rja14/tcpa-faq.html would provide a restriction and a usage meter, so you could be charged for using your PC. It seems clear that MS is following the crowd into the cloud, and drooling all the way, but it's not clear that MS has had any really defined plan for years now, other than milking their monopoly. It seems to be more like a number of contingency products that can be emphasised as needed. Services? Tools for developers? MS as a giant utility company selling functionality? Who knows....they might even try writing software if they see a potential profit in it. :) The Azure product is also partially pay-as-you-go. Charging for the product and the usage is certainly a hot idea lately. Software *and* Service, as Mr. Ballmer likes to say. I hope Toyota doesn't get the same idea. I use my pickup for work. If it were a Microsoft pickup I'd have to pay double for the Pro version, then pay MS by the mile on top of that. Come to think of it....I wonder about that toothbrush I bought last week. Do I have to buy the Pro version if I plan to brush my teeth during work? Will they bill me for usage based on an estimate of 3 brushings a day, even if I only brush twice? That doesn't seem fair. I wonder if I could sign up for Brushing Advantage and just pay $300 for 3 years worth of brushing..... "Mayayana" <mayayana@invalid.nospam> wrote in message
http://www.computerworld.com/s/article/9124459/Microsoft_specs_out_pay_as_you_go_PC_scheme
news:i4gmdg$kh$1@news.eternal-september.org... :| In fact : | rumour has it that for the next version of Windows they are looking at the : | name Windows PayAsYouGo® :-) : | : : I hadn't heard about that, so I looked it up. : Turns out they filed for a patent about 7 months : ago, including a detailed expalantion of the plan: : : : You know, considering MSFT's failures in other markets (MP3 players, game systems, phones, etc), they would have a real tough time trying to sell the pay as you go model. It's destined for failure. Why would anyyone willingly give up their current PC and current OS for something they have to pay MORE for, besdies the cost of the box and the OS. Plus, considering how sh*tty the economy is, no one really has the money to pay for yet *another* service. And let's face it, if it doesn't top the iPhone or Android, MSFT doesn't have a prayer. On 18/08/2010 14:17, Mayayana wrote:
> | In fact Isn't this now off topic for this group? :)> | rumour has it that for the next version of Windows they are looking at the > | name Windows PayAsYouGo® :-) > | > > I hadn't heard about that, so I looked it up. > Turns out they filed for a patent about 7 months > ago, including a detailed expalantion of the plan: -- Dee Earley (dee.ear***@icode.co.uk) i-Catcher Development Team iCode Systems (Replies direct to my email address will be ignored. Please reply to the group.) "Mayayana" <mayayana@invalid.nospam> wrote in message I've said for a long time on this group that Micro$oft are heading into the news:i4gmdg$kh$1@news.eternal-september.org... > I hadn't heard about that, so I looked it up. > Turns out they filed for a patent about 7 months > ago, including a detailed expalantion of the plan: > > http://www.computerworld.com/s/article/9124459/Microsoft_specs_out_pay_as_you_go_PC_scheme rental market, so it is no surprise that they have actually taken steps in that direction, but I find it really strange that patents can be granted for such crazy things, which I would have thought would not be patentable at all. Either Micro$oft is shelling lots of cash in the direction of the people who control these things, or patents in America are unusually easy to come by. I mean, how can you possibly patent a "pay as you go" system, when people and companies have been using pay as you go systems of all kinds for literally more than a thousand years! The mind boggles. Mike On Wed, 18 Aug 2010 20:05:17 +0100, "Mike Williams"
<M***@WhiskyAndCoke.com> wrote: Show quoteHide quote > Patents are not much easier to get in the US than they are elsewhere,>"Mayayana" <mayayana@invalid.nospam> wrote in message >news:i4gmdg$kh$1@news.eternal-september.org... > >> I hadn't heard about that, so I looked it up. >> Turns out they filed for a patent about 7 months >> ago, including a detailed expalantion of the plan: >> >> http://www.computerworld.com/s/article/9124459/Microsoft_specs_out_pay_as_you_go_PC_scheme > >I've said for a long time on this group that Micro$oft are heading into the >rental market, so it is no surprise that they have actually taken steps in >that direction, but I find it really strange that patents can be granted for >such crazy things, which I would have thought would not be patentable at >all. Either Micro$oft is shelling lots of cash in the direction of the >people who control these things, or patents in America are unusually easy to >come by. I mean, how can you possibly patent a "pay as you go" system, when >people and companies have been using pay as you go systems of all kinds for >literally more than a thousand years! The mind boggles. > (unless you count those countries where it is practically impossible for an individual to get one <g>) You should note that any body that grants patents is simply checking for the vague properties of "newness", "non-obvious", and "usefulness". So if something seems to fit that description and it doesn't seem to be like anything already on file - then it gets a patent. And at that point the issuer loses all interest. Enforcing an infringement of a patent is up to the holder. Which means a civil lawsuit. Defending an infringement is tough, because an alleged violator can also sue that it isn't a "valid" patent. Most patents today are primarily to keep people from stealing and reduce the possibilty you might get sued by someone else. In other words, it isn't just the "pay as you go" scheme MS is patenting, but how they are implementing it, else someone could just copy/reengineer (flat-out steal) the whole thing, and then come back and sue MS for using it. -ralph On Aug 18, 2:21 am, "Mike Williams" <M***@WhiskyAndCoke.com> wrote: I really can't understand this image you try to paint of me as some> "Tom Shelton" <tom_shel...@comcast.invalid> wrote in message > > news:i4fid8$4lr$1@news.eternal-september.org... > > > The day that MS shuts out 3rd party developers > > to windows, is the day that Linux becomes the > > A-team on the desktop. > > Actually the crazy deranged monkey who is running Micro$oft at the moment, > the monkey that easily led "camp followers" such as yourself drool over at > meetings, sort of MS fan-boi... I am certainly not. I do use Windows and my main development platform is currently a Microsoft product... I imagine you take my defense of .NET as some sort of religious war, and to some degree it maybe - all developers tend to become attached to the tools they use. That's why the my language is better then your language wars rage on :) But, none of that has to do with Microsoft. > is capable of doing anything, whether it is rational or not That I can agree with. I believe that MS has made some rather unwisedecisions of late. > . He Simply not true. And if it were to happen, then that would be the end> doesn't (at the moment!) want to shut out /all/ developers, although he is > very definitely leaning towards shutting out developers who are not writing > stuff for delivery over the web. of MS. > It's sad that, because at one time the This is were we part. I simply do not see any indication of that. I> crazy deranged monkey was quite keen on all developers: > > http://www.youtube.com/watch?v=8To-6VIJZRE > > However, he does want to shut out, or at least seriously undermine, those > people who want to develop fully compiled execs that sit on the user's > system and that can be used at any time, with or without an internet > connection. see that they would like to enhance the software delivery experience, and I'm fine with that. But, they simply can not impose this sort of strategy on everyone or they will die. > He is now heading towards a brave new world of web developers Microsoft can not cut off third party developers, period. It would> where most applications that people run are delivered over the internet, > where Micro$oft can cream off some of the profits for themselves. In fact > rumour has it that for the next version of Windows they are looking at the > name Windows PayAsYouGo® :-) > > The dotnet stuff is nowhere near that point at the moment of course, but it > is clearly "the thin end of the wedge". > kill them instantly. Many very large corporations have windows has an integral part of their enterprise - and usually are running lots of custom, in-house, systems. If MS were to cut off their developers or force any particular distribution model, then there would cease to be business value in using Microsoft Windows. It wouldn't be long before MS was nothing but a small third rate company operating out of a hotel room in New Mexico... As for the commercial side, I don't really see anything l wrong with having this sort of system in place as an option - if done right. One of the nice features of most Linux systems are their package management. Most have a central repository of thousands of programs that can be installed at the click of a button or a simple command at the command line. The package manager handles the download, install, and updates to that software. It's actually quite nice. Windows could do with something like that. A central market place where users can find and download software, manage updates, etc. It could be a nice system, but even then it can never be a full replacement for the current system. It just can't be. -- Tom Shelton "saftheonly" expressed precisely :
> Thank you for the "advise". With the exception of Cor and Mayayana I'm Here's what I use (also a modified version of code from Larry):> surprised at the level of arrogance and disrespect that the rest of your > answers displayed. If this is how newsgroups attempt to be helpful, I think > I'll stick with Help Files. > > Enjoy your clique, perhaps you can also find one that deals with social > skills. > > > WD Private Sub Get_FolderDetails() ' Lists file properties for a specified folder Dim SH: Set SH = CreateObject("Shell.Application") Dim oFol As Folder: Set oFol = SH.Namespace("C:\Temp") Dim i As Variant, i2 As Long, i3 As Long For i2 = 0 To oFol.Items.Count - 1 If oFol.Items.Item(i2).IsFolder = False Then Debug.Print "" For i = 0 To 34 Debug.Print i & " " _ & oFol.GetDetailsOf(oFol.Items.Item(i2).name, i) _ & vbTab & oFol.GetDetailsOf(oFol.Items.Item(i2), i) Next End If Next Set SH = Nothing: Set oFol = Nothing End Sub HTH -- Garry Free usenet access at http://www.eternal-september.org ClassicVB Users Regroup! comp.lang.basic.visual.misc |
|||||||||||||||||||||||