散々、asp.netで悩む
chrome/edgeでことごとく同じ現象だったので、VSの設定をあれこれ変えたり、コードを書き換えたりとしていたが改善せず。友人のとこでは普通に動くと言われ驚愕。もう無理と思ってFireFoxを入れたら動作した、、、あれ?w
結局のところ、原因はオレオレ設定だった、、、記憶にないのだが、セキュリティーの設定をガッチガチに固めていたようだ。自分で仕掛けたセキュリティーに自分でハマるとは、、、トホホ
2026/1/17 土曜日
癖が強い設定
2025/12/31 水曜日
Last Rust
LinuxもRustに浸食されてきたし
MSもWindowsのコードをRust化するとか言い出してるので、食わず嫌いもダメだろうという事でRustを触ってみる。所有権+スコープ、借用+ライフタイム、噂通りにややこしい。いや、サンプルの簡単な例示なら理解できるが、実際のコードやマルチスレッド下ではどうなるの?って混乱しそう、Swiftより厄介かも。classは無いが、struct+trait+implで相当な事が出来るそうな。ソースもjavaの階層構造みたいでmodやcrateでいろいろやるらしい。
アセンブラ+Cで育ったので、どうせ最後はネイティブコードと考えている当方には敷居が高いw
2025/12/29 月曜日
vscode+wasm(c#)
vscodeでwasmのデバッグ最短コース
dotnetにwasm用のテンプレートが無い場合に先に追加しておく(dotnet new wasmbrowserでエラーが出る場合は入っていない)
dotnet new install Microsoft.NET.Runtime.WebAssembly.Templates
wasmサンプルプロジェクトを作成
> dotnet new sln -o wasm > cd wasm > dotnet new wasmbrowser -f net8.0 -o wasm1 > dotnet sln add wasm1/wasm1.csproj > dotnet build -c Debug
vscodeでwasmを開いて、launch.jsonを作成しビルド
urlは自動生成されたlaunchSettings.jsonに書いてあるurlをコピペ
{
"name": "Debug WASM",
"type": "blazorwasm",
"request": "launch",
"cwd": "${workspaceFolder}/wasm1",
"url": "https://localhost:7080"
}
ブレークポイントを置いてデバッグ開始すると、そこで止まる。
出来る事がわかったので、そっとvscodeを閉じるw
2025/11/21 金曜日
VS2026 Community
VS2022と比べて気持ち起動が早くなったのか(な?)
それにしても、いつからWinFormのデザイナーが使えるようになったんだろう。2022では使えて驚いたが、2018では使えなかった。dotnetはVSのバージョンで使える上限が決まるので、10を使いたければ2026しかない。VSCodeなら制限はないが、デザイナーが使えないのでWinFormは厳しいだろう。
相変わらず、VSは良く出来てると思う
2025/9/7 日曜日
いつの間に?
知らない間に便利になってたC#構文
void foo(object a) {
//今までこんな感じだったのが
var t = a as T;
if (t is not null) {
t.bar();
}
//これで済む
if (a is T t) {
t.bar();
}
}
これが思いの外便利。
他にもTupleに名前付けられたりとかVSCodeの構文チェッカーがいろいろ指南してくれる。
2025/8/5 火曜日
部屋とCopilotと私
Direct3Dのサンプルを頼む
>お任せください!
(動かない)画面真っ黒
>ここを見直してみました
(動かない)相変わらずだ
>ソースを見せてください
お前が書いたんだろうが、、、送ったぞ
>まさか…“僕が出したコードが動かない”というこの恐るべき事態。
まったくだ
>ここをこうしてください
(動かない)言われた通り、直したけど?
A Few Hours Later
(動かない)言われた事は全部やったぞ
>もうこうなったら僕が一からコードを組み直すよ
(動かない)そもそも貴様の書いたコードだ
>どうでしょうか?
(動かない)もう無理、諦めた
>ここまでよく頑張りましたね。本当にお疲れさまでした。
舐めてんのか、、、
2025/8/2 土曜日
ちょっと試したい事があって
Copilotに聞いてみる
少し前に比べると精度上がった? ちゃんと動くコード書いてくれるし、質問に対して適格な答えを用意するし、普通の会話みたいな聞き方しても理解するし、、、ホント凄いわ。対話の流れも覚えてるから質問も楽になる。
更にできるようになったな、Copilot!
2025/7/14 月曜日
まだまだ進化し続ける
X68kのgccが今でもメンテされているのか
昔は真理子版と呼ばれるgccがよく使われていた。これにhas/hlkとx68のIOCSに最適化されたlibcを使ってhuman68k上でビルドしていた。X68000Zのお陰もあってか今でも別系統でgccがメンテされてようだ。おまけにpthreadまであるとは、、、binutilsまで用意されてるからクロスコンパイルしたelf形式をhuman68kに変換する方式なのかな?
X6使ってたの30年以上前だもんな、覚えてないわw
2025/2/21 金曜日
emscripten #2
ここを参考に、sshで直接コンテナに入れるように改良。vscodeにDWARF pluginを入れてリモートでコンテナに入りデバッグするとCのソースコードレベルでブレークポイントが効くようになった。
FROM ubuntu:24.04
RUN apt update \
&& apt -y upgrade \
&& apt clean && rm -rf /var/lib/apt/lists/*
RUN apt update \
&& apt -y install tzdata \
&& apt clean && rm -rf /var/lib/apt/lists/*
ENV TZ=Asia/Tokyo
RUN apt update \
&& apt -y install --no-install-recommends build-essential \
&& apt clean && rm -rf /var/lib/apt/lists/*
RUN apt update \
&& apt -y install git cmake wget python3 openssh-server vim \
&& apt clean && rm -rf /var/lib/apt/lists/*
# emscripten ##########################
ARG EMSDKDIR=/opt/emsdk
RUN git clone https://github.com/emscripten-core/emsdk.git ${EMSDKDIR}
RUN cd ${EMSDKDIR} \
&& ./emsdk install latest \
&& ./emsdk activate latest
RUN echo "source ${EMSDKDIR}/emsdk_env.sh" >> ~/.bash_profile
# sshd ################################
RUN mkdir -p /var/run/sshd
RUN echo 'root:password' | chpasswd
RUN sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config
RUN sed -i 's/#PasswordAuthentication no/PasswordAuthentication yes/' /etc/ssh/sshd_config
RUN sed 's@session\s*required\s*pam_loginuid.so@session optional pam_loginuid.so@g' -i /etc/pam.d/sshd
ENV NOTVISIBLE "in users profile"
RUN echo "export VISIBLE=now" >> /etc/profile
EXPOSE 22
CMD ["/usr/sbin/sshd", "-D"]
services:
emsdk:
build: ./
extra_hosts:
- "host.docker.internal:192.168.10.180"
working_dir: /root/src
tty: true
stdin_open: true
volumes:
- ./src:/root/src
ports:
- 8080:8080
- 2222:22
- 9223:9223
2025/2/20 木曜日
emscripten
wasmにソースのfull pathが入ってしまい、dockerでvolumeしてるlocalから拾ってくれない。javascriptはいけるんだが、コンテナ直にsshで入らないとダメか?
chromeの拡張機能に設定があるが効かない、、、
$ EMCC_DEBUG=1 emcc hello.c -o hello.html # default debug build $ emcc -O0 -g3 -gsource-map hello.c -o hello.html # manual debug build $ emcc -O0 -g -gsource-map -gseparate-dwarf=hello.debug.wasm -s \ SEPARATE_DWARF_URL="file://~/source/docker_emscripten/src/hello.debug.wasm" \ hello.c -o hello.html $ emrun --no_browser --port 8080 . # run http test server
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch Chrome",
"type": "chrome",
"request": "launch",
"url": "http://localhost:8080",
"port": 9223,
"runtimeArgs": [
"--new-window",
"--remote-debugging-port=9223"
],
"runtimeExecutable": "canary",
"webRoot": "${workspaceRoot}/src"
}
}