Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 | 2 |

 

  Вопрос: Как создать ярлык? Добавлено: 06.04.06 23:29  

Автор вопроса:  Temak | ICQ: 264-692-095 

Ответить

  Ответы Всего ответов: 26  

Номер ответа: 16
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #16
Добавлено: 10.04.06 00:55
2Nj, динамическое выделение памяти :)

Ответить

Номер ответа: 17
Автор ответа:
 Nj



ICQ: 223663115 

Вопросов: 21
Ответов: 285
 Профиль | | #17 Добавлено: 10.04.06 22:08
2 Sharp - я благодарен, по ссылке схожу,
но я и тривиально не смогу это перевести - для меня С++ тёмный лес. Я очень прошу, поясните мне до конца (ну не выходит) как мне получать путь к десктопу или стартапу в переменную SysPath..

Ответить

Номер ответа: 18
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #18 Добавлено: 10.04.06 23:49
Environ ?










Ответить

Номер ответа: 19
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #19
Добавлено: 11.04.06 11:02
По ссылке надо не просто сходить, по ней надо обязательно сходить, обязательно скачать API Viewer и юзать его каждый день :)

Ответить

Номер ответа: 20
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #20 Добавлено: 11.04.06 13:11
Все приходится разжевывать...

Option Explicit
Private Declare Function SHGetSpecialFolderLocation Lib "shell32.dll" (ByVal hwnd As Long, ByVal csidl As Long, ByRef ppidl As ITEMIDLIST) As Long
Private Declare Function SHGetPathFromIDList Lib "shell32.dll" (ByVal pidl As Long, ByVal pszPath As String) As Long
Private Type SHITEMID
    cb As Long
    abID As Byte
End Type
Private Type ITEMIDLIST
    mkid As SHITEMID
End Type
Const CSIDL_COMMON_DESKTOPDIRECTORY = &H19

Private Sub Form_Load()
Dim lpITEMIDLIST As ITEMIDLIST, Ret As Long, DesktopPath As String
Ret = SHGetSpecialFolderLocation(Me.hwnd, CSIDL_COMMON_DESKTOPDIRECTORY, lpITEMIDLIST)
If Ret = 0 Then
    ;DesktopPath = Space(260)
    SHGetPathFromIDList lpITEMIDLIST.mkid.cb, DesktopPath
    ;DesktopPath = Left$(DesktopPath, InStr(DesktopPath, vbNullChar) - 1)
End If
End Sub

Ответить

Номер ответа: 21
Автор ответа:
 Nj



ICQ: 223663115 

Вопросов: 21
Ответов: 285
 Профиль | | #21 Добавлено: 11.04.06 22:39
2 LamerOnLine - Большое спасибо!!!

Ответить

Номер ответа: 22
Автор ответа:
 Nj



ICQ: 223663115 

Вопросов: 21
Ответов: 285
 Профиль | | #22 Добавлено: 11.04.06 22:43
2 HACKER - поясни, пожалуйста, как ей пользоваться.
2 ALL
Const CSIDL_STARTUP = ?

Ответить

Номер ответа: 23
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #23 Добавлено: 11.04.06 22:52
Const CSIDL_STARTUP = &H7

Ответить

Номер ответа: 24
Автор ответа:
 Nj



ICQ: 223663115 

Вопросов: 21
Ответов: 285
 Профиль | | #24 Добавлено: 11.04.06 22:56
2 EROS - спасибо.

А какие еще папки можно вычислить через эту процедуру и константы?

Ответить

Номер ответа: 25
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #25 Добавлено: 12.04.06 00:06
Private Const CSIDL_ADMINTOOLS = &H30
Private Const CSIDL_ALTSTARTUP = &H1d
Private Const CSIDL_APPDATA = &H1a
Private Const CSIDL_BITBUCKET = &Ha
Private Const CSIDL_COMMON_ADMINTOOLS = &H2f
Private Const CSIDL_COMMON_ALTSTARTUP = &H1e
Private Const CSIDL_COMMON_APPDATA = &H23
Private Const CSIDL_COMMON_DESKTOPDIRECTORY = &H19
Private Const CSIDL_COMMON_DOCUMENTS = &H2E
Private Const CSIDL_COMMON_FAVORITES = &H1F
Private Const CSIDL_COMMON_PROGRAMS = &H17
Private Const CSIDL_COMMON_STARTMENU = &H16
Private Const CSIDL_COMMON_STARTUP = &H18
Private Const CSIDL_COMMON_TEMPLATES = &H2d
Private Const CSIDL_CONNECTIONS = &H31
Private Const CSIDL_CONTROLS = &H3
Private Const CSIDL_COOKIES = &H21
Private Const CSIDL_DESKTOP = &H0
Private Const CSIDL_DESKTOPDIRECTORY = &H10
Private Const CSIDL_DRIVES = &H11
Private Const CSIDL_FAVORITES = &H6
Private Const CSIDL_FONTS = &H14
Private Const CSIDL_HISTORY = &H22
Private Const CSIDL_INTERNET = &H1
Private Const CSIDL_INTERNET_CACHE = &H20
Private Const CSIDL_LOCAL_APPDATA = &H1c
Private Const CSIDL_MYPICTURES = &H27
Private Const CSIDL_NETHOOD = &H13
Private Const CSIDL_NETWORK = &H12
Private Const CSIDL_PERSONAL = &H5
Private Const CSIDL_PRINTERS = &H4
Private Const CSIDL_PRINTHOOD = &H1b
Private Const CSIDL_PROFILE = &H28
Private Const CSIDL_PROGRAM_FILES = &H26
Private Const CSIDL_PROGRAM_FILES_COMMON = &H2b
Private Const CSIDL_PROGRAM_FILES_COMMONX86 = &H2c
Private Const CSIDL_PROGRAM_FILESX86 = &H2a
Private Const CSIDL_PROGRAMS = &H2
Private Const CSIDL_RECENT = &H8
Private Const CSIDL_SENDTO = &H9
Private Const CSIDL_STARTMENU = &Hb
Private Const CSIDL_STARTUP = &H7
Private Const CSIDL_SYSTEM = &H25
Private Const CSIDL_SYSTEMX86 = &H29
Private Const CSIDL_TEMPLATES = &H15
Private Const CSIDL_WINDOWS = &H24

Ответить

Номер ответа: 26
Автор ответа:
 Nj



ICQ: 223663115 

Вопросов: 21
Ответов: 285
 Профиль | | #26 Добавлено: 13.04.06 22:45
2 EROS - спасибо.
2 LamerOnLine - спасибо!!!
Все работает!
Кстати, я тут интереса ради, циклом в 65000 запрашивал эту процедурку - а заметил, что значение, возвращаемое ей в переменную с путем повторяется примерно каждые 200 раз, т.е.
Избранное например это: 6, 262, 518, 774... и т.д. Интересно, а почему так?

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам