【#VBA】CreateObject(“Scriptlet.TypeLib”).GUIDで「70 書き込みできません」エラー
関連記事
- VBAなお仕事中 【2017年06月13日(火)】
- Excel-COM&Outlook-COMな仕事,一山越えた 【2017年05月19日(金)】
- 最近,全力でモノ作り中 【2017年05月19日(金)】
- 【C#,Excel-COM】ExcelアドインをC#使って自動登録/解除 【2014年07月01日(火)】
- Excel-VBA なんか慣れた(爆 「リボンへのマクロの自動登録機構」も作りこんだ 【2014年06月25日(水)】
某社に出しているVBAマクロが,エラー吐いて,起動できなくなった言うてる
あれ?なんじゃろか??
某社の社内システム,セキュリティがきついし
また,社内セキュリティ仕様が変わったかね?(これで対応コードを何度か変更した)
とりあえず,思いつくまま対応メールした
んで,別の仕事やろうと思ってたけど,なんか引っかかって,ディープに調べてみた
驚愕の事実,判明((((;゚Д゚))))ガクガクブルブル
KB3213624をWindows Update当てると,”Scriptlet.TypeLib” COMの仕様変わって
実行時エラー ’70’: アクセスが拒否されました
が出るそうな
GUID – Run-time error ’70’ permission denied @Microsoft
2017 年 7 月のセキュリティ更新適用後、VBA から一部のオブジェクトを作成できません@Microsoft
CreateObject("Scriptlet.TypeLib").GUIDこれ,使いまくり...
。・゚・(ノД`)・゚・。
MSさん,仕様変えるなよぉ~~
このコードに変えれば,大丈夫っぽい?(未検証)
Private Type GUID_TYPE Data1 As Long Data2 As Integer Data3 As Integer Data4(7) As Byte End Type Private Declare PtrSafe Function CoCreateGuid Lib “ole32.dll” (Guid As GUID_TYPE) As LongPtr Private Declare PtrSafe Function StringFromGUID2 Lib "ole32.dll" (Guid As GUID_TYPE, ByVal lpStrGuid As LongPtr, ByVal cbMax As Long) As LongPtr Function CreateGuidString() Dim guid As GUID_TYPE Dim strGuid As String Dim retValue As LongPtr Const guidLength As Long = 39 'registry GUID format with null terminator {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} retValue = CoCreateGuid(guid) If retValue = 0 Then strGuid = String$(guidLength, vbNullChar) retValue = StringFromGUID2(guid, StrPtr(strGuid), guidLength) If retValue = guidLength Then ‘ valid GUID as a string CreateGuidString = strGuid End If End if End Function
某社担当,今日はお休みらしいので
明日,対応検討しますー
コメント
「ジャパニーズウイスキー」の基準“法律で明確化を”業界団体
【#桜】国富:大坪の一本桜を見物に行った!咲いてなかったドロドロドロ(25/3/22)
3月下旬なのに鰐塚山が雪を被ってる.これはヤバス(25/3/19)
JR日豊線・仙巌園駅3月15日開業 周辺含む総整備費は12億円、開業合わせ磯ビーチハウスにカフェオープン
【#確定申告】税務がオワタ!所得税&消費税申告書を提出した!財務省の役人どもはこの恨み,祝ってやるドロドロドロ
【#火事】都農町のキャンプ場近くで山林火災 現在も消火活動中(27日午後6時15分現在)
宮崎ー台湾 国際定期便が週2往復に増便へ 来月30日から(25/2/15)
『にっぽん縦断 こころ旅』4月から田中美佐子が新たな旅人に 火野正平さんが14年間担当
オリックス・バファローズのキャンプ見学に行ってきた,昨日(爆(25/2/9)