こんにちは。
質問の内容ですがシェアウェアのプログラムを組みました。
シェアウェアなら有効期限(無料期間)がすぎたかどうか
チェックします。
ですが、Windowsのスタートアップにショートカットをおいておくと
消される危険があるのでそこに置かずに起動したいのですが、
レジストリなどの関係になっていくのでしょうか。
あと、任意のファイルのショートカットを作成する
コマンドがあったらご教授お願いします。
まず下記の件ですが
>ですが、Windowsのスタートアップにショートカットをおいておくと
>消される危険があるのでそこに置かずに起動したいのですが、
>レジストリなどの関係になっていくのでしょうか。
レジストリを使用します。
詳細はこのページに掲載していますのでそちらを見てください。
http://madia.world.coocan.jp/REG/Registry.htm
ショットカットの件は
OsfCreateShellLink、又はOsfCreateShellLinkを使用します。
Public Declare Function OSfCreateShellLink Lib "vb6stkit.dll" Alias
"fCreateShellLink" (ByVal lpstrFolderName As String, ByVal lpstrLinkName As
String, ByVal lpstrLinkPath As String, ByVal lpstrLinkArguments As String,
ByVal fPrivate As Long, ByVal sParent As String) As Long
※ちなみにこのAPI関数はMSDNで公開されていません
ショートカットについてですが、
>Dim ert As Long
>ert=ShellOSfCreateShellLink"Project.exe","Project1.lnk",0,0, 0,0))
のようにしてみました。
ですが、ファイルがないとエラーが起きます。
不適切なところがあったら指摘してください。
お願いします。
間違えてました
Dim ert As Long
ert = Shell(OSfCreateShellLink("Project.exe", 0, "Project1.lnk", 0, 0, 0))
"0"と"Project.lnk"を反対にしてください。
何度も間違えてすみません
間違えてました
Dim ert As Long
ert = Shell(OSfCreateShellLink("Project.exe", 0, "Project1.lnk", 0, 0, 0))
↑の発言は再送信のミスです。
無視してください。
どうもすみません。
レジストリに関してです。
試しにこのようにしたのですが、
SaveSetting appname:="P", section:="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\run\", _
Key:="PP", setting:="D:\PPP.exe"
レジストリはどうしても
HKEY_CURRENT_USER\Software\VB and VBA Program Settings
に作成されます。
どうすれば
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\run\にレジストリを作成するのでしょうか
VBの場合はWin32APIを使用しないとそこの場所には作成出来ません。
確か、APIコーナーにレジストリ関係のサンプルを作ったような
気がするので試してみてください。
ショートカットについて
ofCreateShellLink()APIは「vb6stkit.dll」がないと動きません。
また、VB5.0をインストールしていても動きません。
レジストリのサンプルは作成したのであります。
>PAPY
サンプル見つかりました。
どうもありがとうございます。
それにショートカットの件も見つかりました。
ご迷惑かけてすみません。
ツイート | ![]() |